لماذا لا يمكنك إرسال رسائل بريد إلكتروني متعددة بشكل غير متزامن باستخدام نفس مثيل SMTPClient؟
-
21-09-2019 - |
سؤال
ما يقوله على القصدير.
المحلول
بحسب ال صفحة MSDN على SMTPClient ، فإن الغرض الوحيد لـ SendAsync هو السماح لخيطك الحالي بمتابعة المعالجة بدلاً من انتظار عملية الإرسال. الغرض من SendAsync ليس للسماح لك بإرسال رسائل متعددة في وقت واحد ، فهو يسمح لك بمتابعة المعالجة أثناء إرسال الرسالة. يستخدم Sendasync و SEND كلاهما نفس خط الأنابيب ، يسمح لك Sendasync فقط بالقيام بأشياء أخرى أثناء إرسال الرسالة.
نصائح أخرى
بالنسبة الى MSDN:
بعد استدعاء SendAsync ، يجب أن تنتظر إكمال نقل البريد الإلكتروني قبل محاولة إرسال رسالة بريد إلكتروني أخرى باستخدام Send أو SendAsync.
لذلك يمكنك إعادة استخدام نفس الحالة ولكن يجب أن تنتظر إرسال البريد الأول.
لا تنتمي إلى StackOverflow