【发布时间】:2011-06-07 19:49:58
【问题描述】:
我有一个 WCF 4 REST 服务,它进行一些处理,然后立即返回。现在需要在每次调用此服务时异步发送一封电子邮件。有没有什么方法可以实现这一点,而无需在数据库中对电子邮件进行排队,然后使用 Windows 服务发送电子邮件?
【问题讨论】:
-
你不能简单地使用
ThreadPool.QueueUserWorkItem(YourSendEmailMethod)吗? -
将 ThreadPool.QueueUserWorkItem 与 WCF 一起使用是个好主意吗?这不会减少可用于服务 REST Web 服务的线程数吗?
-
不知道是否对 WCF 有影响,但 ThreadPool 的想法是在可能的情况下完成这项工作,即释放线程时。当然这会消耗一个线程,但是无论你选择什么路径,总会有一个线程来完成这项工作。