长时间运行期间的泵消息

时间:2010-01-01 17:37:21

标签: c#

  

CLR无法从COM上下文0x1b2938转换为   COM上下文0x1b2aa8持续60秒。拥有目标的线程   上下文/公寓最有可能是做一次非抽水等待或   在不抽取Windows消息的情况下处理非常长时间的运行。   这种情况通常会对性能产生负面影响甚至可能导致   应用程序变得无响应或内存使用累积   随着时间的推移。为了避免这个问题,所有单线程公寓   (STA)线程应该使用抽取等待原语(例如   CoWaitForMultipleHandles)并在长时间运行期间定期泵送消息   operations.i使用smtpClient类发送邮件

我希望以3 kb / s的连接速度发送一些电子邮件,但在60之后会出现错误。

有人能用C#提供最好的完整解决方案吗?

1 个答案:

答案 0 :(得分:1)

看起来您正在使用COM组件发送电子邮件。

你应该使用.Net的SmtpClient类。