Более быстрое чтение папки "Входящие" в Java

Я хотел бы получить список всех, кто когда-либо был включен в любое сообщение в моем почтовом ящике. Прямо сейчас я могу использовать почтовый API javax для подключения через IMAP и загрузки сообщений.:

Folder folder = imapSslStore.getFolder("[Gmail]/All Mail");
folder.open(Folder.READ_ONLY);
Message[] messages = folder.getMessages();

for(int i = 0; i < messages.length; i++) {
  // This causes the message to be lazily loaded and is slow
  String[] from = messages[i].getFrom();
}

Строка messages[i].getFrom ()работает медленнее, чем хотелось бы, потому что сообщение загружается лениво. Могу ли я что-нибудь сделать, чтобы ускорить это? Например. есть ли какая-то массовая загрузка, которую я могу сделать вместо загрузки сообщений по одному -за -? Загружает ли это все сообщение, и есть ли что-то, что я могу сделать, чтобы вместо этого загружать только поля или заголовки to/from/cc? Будет ли POP быстрее, чем IMAP?

6
задан Jonathan Leffler 25 June 2014 в 02:43
поделиться