由买买提看人间百态
登录
首页
论坛
未名存档
话题女王
小圈子
马甲追踪
版面排名
流量曲线
水枪排名
发帖量曲线
发帖版面饼图
发帖时间柱图
关于本站
帮助
boards
本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字
访问原贴
Programming版
- 异步通讯代码的简化
相关主题
●
好玩的梦了:米饭均衡 。。。 (转载)
●
如何快速学Java
相关话题的讨论汇总
话题: yield
话题: read
话题: 异步
话题: webservice
话题: 代码
进入Programming版参与讨论
1
(共1页)
s*******d
发帖数: 59
1
有的异步socket的实现框架是通过诸如beginXXX,endXXX等一些回调函数,
可想而知,这样的代码恐怕支离破碎,即难编又难看。
去年看到C#的新语句,yield,通过状态机和将local变量包装到自动生成的类里,
可以方便实现代码的两次调用间的接续执行。
感觉也可以通过这种机制将原来异步的代码转化成同步的写法。
比如
function webservice(socket s) {
YIELD_BLOCK_BEGIN
...
YIELD_READ(s)
...
YIELD_WRITE(s)
...
YIELD_BLOCK_END
}
另外有线程来调用上面的webservice,到YIELD_READ时,其实是执行异步read就返回,
等read ready的时候线程继续调用webservice,执行就从YIELD_READ后开始。
具体到C++实现,大家有什么好主意吗?
k*k
发帖数: 508
2
妙啊~ 怎么从来没想到这么用呢,正在写一个相关的东西,正好用上
哈哈
【在 s*******d 的大作中提到】
: 有的异步socket的实现框架是通过诸如beginXXX,endXXX等一些回调函数,
: 可想而知,这样的代码恐怕支离破碎,即难编又难看。
: 去年看到C#的新语句,yield,通过状态机和将local变量包装到自动生成的类里,
: 可以方便实现代码的两次调用间的接续执行。
: 感觉也可以通过这种机制将原来异步的代码转化成同步的写法。
: 比如
: function webservice(socket s) {
: YIELD_BLOCK_BEGIN
: ...
: YIELD_READ(s)
1
(共1页)
进入Programming版参与讨论
相关主题
●
好玩的梦了:米饭均衡 。。。 (转载)
●
如何快速学Java
相关话题的讨论汇总
话题: yield
话题: read
话题: 异步
话题: webservice
话题: 代码
未名新帖统计
// 7月16日
#
版面
帖数(主题数)
-
全站
4871 (796)
1
Military
3777 (569)
2
Stock
341 (51)
3
Joke
117 (17)
4
History
116 (3)
5
Automobile
100 (9)
6
USANews
55 (9)
7
Midlife
45 (1)
8
Headline
41 (41)
9
Dreamer
33 (13)
10
FleaMarket
32 (20)
11
Living
30 (7)
* 这里只显示发帖超过25的版面,努力灌水吧:-)
历史上的今天
faintcat妹妹看进来~~
发表于12年前.
NSC, PD 1/7/2007, EB2, ...
发表于11年前.
[FBA求购]MJVE2 758 MJVM2 ...
发表于6年前.
老生常谈,归与不归
发表于10年前.
【申请】Seattle西雅图 版版主——申请人...
发表于9年前.
宝宝出生,头骨骨折,求祝福
发表于9年前.
求推荐舒缓优美的古典音乐
发表于11年前.
百分之一的北京人上北大 中国网友愤怒(转载)
发表于10年前.
新人带狗狗Bailey来报道
发表于12年前.
全世界最有价值的运动队
发表于10年前.
请问大切诺基的质量如何
发表于6年前.
TNND,军版全是BKC
发表于15年前.
Inception
发表于12年前.
微软的有些家属可真恶心,为了卖保险脸都不要了
发表于10年前.
每周坐高铁的苦逼来说说感受吧!!
发表于9年前.