C# 在WCF服务中运行长进程

C# 在WCF服务中运行长进程,c#,wcf,service,queue,C#,Wcf,Service,Queue,我有一个WCF服务,配置为单向,低于服务配置: [服务行为(InstanceContextMode=InstanceContextMode.PerCall)] [ServiceBehavior(ConcurrencyMode=ConcurrencyMode.Multiple)] 这就是服务的作用:- 首先从源代码管理同步文件,然后解析文件,然后以另一种格式重建内容并重写文件。最后再次检查源代码管理 当只有一个调用被调用时,它可以正常工作。但是,当同时调用多个调用时,它们都将停留在同步部分。例如,

我有一个WCF服务,配置为单向,低于服务配置: [服务行为(InstanceContextMode=InstanceContextMode.PerCall)] [ServiceBehavior(ConcurrencyMode=ConcurrencyMode.Multiple)]

这就是服务的作用:- 首先从源代码管理同步文件,然后解析文件,然后以另一种格式重建内容并重写文件。最后再次检查源代码管理

当只有一个调用被调用时,它可以正常工作。但是,当同时调用多个调用时,它们都将停留在同步部分。例如,调用方A包含文件,而调用方B未找到文件。如果发生这种情况,则后续调用将失败,直到应用程序池重新启动

从服务中没有错误返回,只是在某个地方丢失,进程被卡在中间。

建议在wcf服务中通过同步来自源代码管理的文件或每次调用服务时调用exe来实现上述长流程,还是将其放入队列机制并让队列管理处理

谢谢