Разница между smtpClient.send() и smtpClient.SendAsync()?
Я пытаюсь отправить почту с localhost..
и при этом у меня есть методы с разных сайтов для отправки писем... но при этом я путаюсь между smtpClient.send()
и smtpClient.SendAsync()
..
Я хочу знать, как они отличаются друг от друга???
Спасибо заранее.
Ответы
Ответ 1
smtpClient.send()
инициирует отправку по основному потоку /ui и будет блокироваться.
smtpClient.SendAsync()
выберет поток из пула потоков .NET и выполнит метод в этом потоке. Поэтому ваш основной пользовательский интерфейс не будет висеть или блокироваться.
Асинхронный метод Invocation - http://www.codeproject.com/KB/cs/AsyncMethodInvocation.aspx
Ответ 2
SendAsyc - отправляет указанное сообщение электронной почты на сервер SMTP для доставки. Этот метод не блокирует вызывающий поток и позволяет вызывающему передать объект методу, который вызывается, когда операция завершается. Подробнее: Метод SmtpClient.SendAsync