【发布时间】:2020-10-05 01:56:25
【问题描述】:
假设我有一个不需要响应的方法,例如:
[ServiceContract]
public interface IWCFTestService
{
[OperationContract]
void ReceiveSomeData(MyDto someDtoObj);
}
现在,在实际的服务实现中,我可以这样写:
public void ReceiveSomeData(MyDto receivedRequest)
{
Task.Run( () => OtherProjectOtherClass.DoWhateverYouWant(receivedRequest) )
//... because I am outta here as fast as possible
}
我假设调用者会一直得到 200-OK;另请注意,我没有在 WCF 方法本身内编写任何任务 async/await。
以这种方式在 WCF 中使用 TPL 是否可以接受,有什么问题吗?
注意:我不关心业务规则,我更关心 WCF/TPL 以这种方式交互在技术上是否可以接受,我会遇到(技术上的)麻烦吗?
【问题讨论】: