/ / Limity czasu nie działają przy użyciu JavaMail 1.4 - java, javamail

Przekroczenia czasu nie działają przy użyciu JavaMail 1.4 - java, javamail

Używam JavaMail do wysyłania żądań e-mail doSerwer SMTP. Ustawiam właściwości "mail.smtp.connectiontimeout" i "mail.smtp.timeout" odpowiednio na 5 i 30 sekund i przekazując oba te parametry do Session.getDefaultInstance (). Jednak, kiedy idę do wykonania Transport.send (), ustawione przeze mnie limity czasu wydają się być ignorowane i zajmuje około 3:45 do przekroczenia limitu czasu na komputerze z systemem Solaris. Czas oczekiwania na Maca wynosi około 1:30. Czy jest to błąd w JavaMail, czy muszę ustawić inne właściwości?

Odpowiedzi:

1 dla odpowiedzi № 1

Myślę, że ustawienia limitu czasu były specyficzne dla Sun JVM - więc może nie działać na Macu dokładnie tak samo.

Miałem ten problem w przeszłości - w końcupochłanianie wątków internetowych. To, co zrobiłem, to dodać w małym JMS, aby kod warstwy internetowej wysłał żądanie e-maila - i miał słuchacza wiadomości (który był jego własnym wątkiem) słuchać i robić e-maile - w sporadycznym przypadku, gdy się utknął, nie zrobił tego " t wpłynęło na resztę aplikacji (tylko e-maile trwały trochę dłużej przez krótki czas) .To naprawdę nie rozwiązuje problemu root, ale skończyło się na lepszym projekcie.