Мне нужно создать письмо с вложением, которое составляется на лету.В своем первом наброске этого я построил вложение в виде строки.Но во время прохождения кода другие указали, что строка может быть очень большой.Обычно это несколько тысяч байт, но иногда это могут быть мегабайты.Поэтому они сказали, что я должен написать это построчно во временный файл, а затем прикрепить файл к электронному письму.В противном случае мне может не хватить места в куче.
Мне интересно, поможет ли это на самом деле.Если JavaMail перед отправкой читает весь файл в память, это не имеет значения.И, конечно же, создание временного файла приводит к другим неприятностям, таким как поиск подходящего каталога для его установки, проверка наличия у меня разрешений и т. Д. Но если вместо этого Javamail читает файл в некоторых кусках скромного размера, то это позволит избежатьпроблемы с памятью.
Побочная проблема: Насколько я понимаю, Javamail отправляет синхронно.Так что, если я создаю файл, отправляю его, а затем удаляю файл, не должно быть проблемы удаления файла до того, как он действительно завершит отправку, верно?