在Windows服務託管的WCF服務中創建後臺線程是否是一種很好的做法?WCF中的後臺線程
事情是這樣的:
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.Single)]
public class Service : IService
{
private void DoWork()
{
...
}
public Service()
{
Thread thread = new Thread(new ThreadStart(DoWork));
thread.Start();
}
}
不,我建議只使用** per-call **服務模型 - 每個請求都會獲得自己的服務類副本,調用該服務方法,然後再次釋放該實例。這並不需要處理棘手的線程安全問題和類似的東西 – 2015-04-04 18:08:12
我的服務正在運行並偵聽網絡並通過Web API將消息發送到MVC服務器。對於per-call服務,我需要在MVC和雙工通信中創建後臺線程..所以我更喜歡在WCF中創建後臺線程並將消息推送到MVC。你能解釋一下,爲什麼這是一種不好的做法? – Michael 2015-04-04 18:39:09
後臺線程會做什麼?它爲什麼需要存在? – usr 2015-04-04 19:03:09