Я использую groovy для доступа к Gmail и чтения входящих сообщений.Это обычная JavaMail, и я не буду описывать ее здесь.
Так что для простоты после подключения к магазину я использую это:
folder.open(Folder.READ_ONLY)
folder.messages.each { msg ->
...
doSomething with msg
...
}
это работает нормально.
Однако у меня проблема с производительностью.Иногда сообщения [] могут быть большими.Некоторые папки содержат более 1000 сообщений, и проверка их всех занимает время.
Я ищу более быстрый способ получения только тех писем, которые являются самыми последними (например, сообщения за последние 5 дней или что-то вродечто)
конечно, у меня есть информация о дате в каждом сообщении, и я мог бы сделать свое сравнение, но это неэффективно, поскольку он будет проходить по всей коллекции.
Есть ли лучший способполучить эти сообщения?