beetlex-io / XRPC

dotnet high performance remote interface and delegate invoke(RPC) communication components,support millions RPS remote interface method invokes
Apache License 2.0
84 stars 22 forks source link

在特定环境下server.XXX().Result会卡死 #34

Closed zzeric closed 2 years ago

zzeric commented 2 years ago

此时服务器并没有收到请求,而这个方法如果不等待就可以正常请求。 因为是在某软件平台上做二次开发,单独写demo却重现不了

beetlex-io commented 2 years ago

不建议使用Result这种简化方式,因为这是Wait无超时限制,很容易引起所有线程挂起。 如果是要同步建议使用wait(timeout)

zzeric commented 2 years ago

调用前设置一下用自己的SynchronizationContext可以解决,避免使用平台主线程的SynchronizationContext,XPRC是不是可以在创建时指定SynchronizationContext