zsynchronizowana metoda lub użyj sprężyny @transakcyjne?
Mam metodę, która będzie używana do wysyłania wiadomości e-mail. chcę zablokować tę metodę, aby tylko jeden wątek mógł uzyskać do niej dostęp w czasie, a reszta puli jednocześnie. powinienem zsynchronizować metodę lub użyć spring @transactional PROPAGATION_REQUIRED?
w mojej warstwie usług //each time use new thread to send out email
public void sendThroughSMTP(List<String> emails,String subject,String content){
//each time will open and sent through port 25. dont u think this will caused too many threads spawned?
BlastEmailThread blastEmailThread = new BlastEmailThread(emails,subject,content);
blastEmailThread.start();
}