【发布时间】:2011-05-20 17:10:14
【问题描述】:
我想使用异步 io 与分布式哈希服务器进行套接字通信。环境是 C# 3.5,但如果需要可以使用 4.0。
假设我发出以下异步命令(伪代码):
socket.set_asynch("FOO","bar");
string rc = socket.get_asynch("FOO");
由于异步io使用系统线程池,所以这两个命令可能运行在两个 不同的线程。如何确保 rc 等于“bar”?即第一个命令 在发出第二个命令之前发出?
谢谢!
【问题讨论】:
-
使用同步IO?
-
@ChaosPandion:我笑了,但这是真的。
-
您是否有理由不使用框架来控制异步行为?
-
嗯........asynch 意味着如果需要,我可以在 set 和 get 之间做一些事情,而不是等待网络回应。
标签: c# sockets asynchronous system threadpool