2 Stimmen

Warum können Sie nicht mehrere E-Mails asynchron über dieselbe SmtpClient-Instanz versenden?

Was auf der Dose steht.

7voto

Alexander Kahoun Punkte 2434

Nach Angaben der MSDN-Seite bei SmtpClient ist der einzige Zweck von SendAsync, dass Ihr aktueller Thread die Verarbeitung fortsetzen kann, anstatt auf die Verarbeitung der Übertragung zu warten. Der Zweck von SendAsync ist nicht, dass Sie mehrere Nachrichten auf einmal senden können, sondern dass Sie mit der Verarbeitung fortfahren können, während die Nachricht gesendet wird. SendAsync und Send verwenden beide dieselbe Pipeline, SendAsync ermöglicht Ihnen nur, andere Dinge zu tun, während die Nachricht gesendet wird.

3voto

Darin Dimitrov Punkte 990883

Según MSDN :

Nach dem Aufruf von SendAsync müssen Sie warten warten, bis die E-Mail-Übertragung abgeschlossen ist, bevor Sie versuchen, eine eine weitere E-Mail-Nachricht mit Send oder SendAsync.

Sie können also dieselbe Instanz wiederverwenden, müssen aber warten, bis die erste Mail versandt wurde.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X