我有暴露的WCF服务,它验证参数并按顺序返回true / false并运行后台后台线程来处理结果。为此我尝试使用HostingEnvironment.QueueBackgroundWorkItem,但它给了我以下错误:
由于对象的当前状态,操作无效。
代码如下:
public class SearchService : ISearchService
{
public async Task<bool> SearchAsync(UserSearch search, string email)
{
//Some operations
var searchManager = new SearchManager();
HostingEnvironment.QueueBackgroundWorkItem(ct => searchManager.PerformSearch(search, email));
return true;
}
}
答案 0 :(得分:0)
我使用了以下内容:
var thread = new Thread(
async () =>
{
await searchManager.PerformSearch(search, email);
}) {IsBackground = true};
thread.Start();
任何更好的选择请告诉我。