0

目前,我正在使用简单的 SmtpClient 的发送方法(没有异步)发送电子邮件。发送电子邮件大约需要 1 分钟以上。所以我的向导告诉我使用线程发送电子邮件。我在谷歌和 SO 上进行了搜索,我知道有各种线程机制来发送电子邮件。我只想知道哪个效率更高,开销更少?

我知道的各种方法是

  1. 使用后台工作者
  2. 使用 AsyncCallback
  3. 创建新线程并手动管理。(我不想朝这个方向发展。)
  4. 使用任务
  5. 使用发送异步
  6. 使用线程池

我对线程的了解很少,所以请帮助我。并建议是否有任何其他方法可以有效地做到这一点。

4

1 回答 1

0

如果您使用的库支持SendAsync,那么您应该使用它。否则,请使用 TPL,这是 .NET 4.0 的并发标准:

 Task.Run( () => smtpClient.Send() );
于 2013-09-21T07:10:48.173 回答