- 论坛徽章:
- 2
|
linux_c_py_php 发表于 2016-07-01 15:14 ![]()
coroutine A:
while (true) { write(channel,"ping"); sleep(1); }
coroutine B:
while (true) { request=read(socket); response=procoess(request); write(socket,response); }
不能A与B共享一个socket,然后A每1秒直接写吗。。。 就是B不变A改成:
- while (true) { write(socket, "ping"); sleep(1); }
复制代码 如果不行的话。。。
linux_c_py_php 发表于 2016-07-01 15:14 ![]()
请问,coroutine B应该怎么把红色部分的逻辑插入到代码里,各种语言的协程都有什么机制来实现呢。
go里面叫select。。。
clojure(core.async)是alt一系列的操作。。。
和操作系统那个select的"概念"类似(并不指它的效率或真的需要系统调用)。。。 可以等待多个"事件"。。。 |
|