+ -
当前位置:首页 → 问答吧 → 谁有使用异步通讯实现同步效果(伪同步)的经验

谁有使用异步通讯实现同步效果(伪同步)的经验

时间:2011-12-15

来源:互联网

我后端是使用异步通讯,所以针对前端用户只能使用伪同步,即前端调用某个方法后,等待异步返回后再返回给客户端
流程如果下:
1、通过异步通讯发送消息
2、等待异步通讯返回结果(异步通讯返回用的是委托)
3、有结果后再返回

我现在是在等待的过程中使用
while() 去扫描委托结果,但总觉的这样太不好,很消耗CPU,不知有没有比较好的方式实现同样的效果

作者: manica   发布时间: 2011-12-15

调用API函数WaitForSingleObject
 或者Thread.Join

http://topic.csdn.net/t/20030216/20/1433410.html

作者: buyong   发布时间: 2011-12-15

TcpClient和UdpClient都提供有异步的方法供你调用

作者: hyttplay   发布时间: 2011-12-15

引用 2 楼 hyttplay 的回复:
TcpClient和UdpClient都提供有异步的方法供你调用


要是这样简单我就不来这个问了, 通讯模型是不能改变的,能变的只有程序

作者: manica   发布时间: 2011-12-15

在并行库出现以前就三种异步调用方式
1、轮询,就是你说的while
2、等待句柄
3、异步回调
据我所知,这三种中,最好的应该数异步回调

如果是使用.net4,可以考虑使用并行库

作者: chromeV8   发布时间: 2011-12-15