找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 4487|回复: 1

svc_handler的方法是否需要线程同步?

[复制链接]
发表于 2007-12-11 22:01:16 | 显示全部楼层 |阅读模式
一个svc_handle的各种handle_*方法在不同线程中还需要我们同步sock_stream吗
不同线程间肯定需要同步,就是不知道ACE是否已经做了同步。我找stream,ACE似乎没有同步,找get_handle怎么也找不见它的实现在哪。然后让一个svc_handle的handle_input和handle_output在两个线程里运行起来,发送接收都很正常,没有冲突出现。
ACE这种情况下对sock_stream到底有没有同步呢?

就是在不同线程间调用一个svc_handlee的peer().send()和peer().recv()时需不需要同步
比如对一个svc_handle在主线程里handle_input里调用peer().recv放入队列,在其svc中调用peer().send(),ACE有没有做对底层sock的同步?
测了一下一个svc_handle的send和recv在不同线程没有冲突,看源码又没找见同步的代码,我是初学,所以来问老大们来了.
一个svc_handle的send和recv间, send与send间, recv与recv间, ACE有对它们同步吗?
 楼主| 发表于 2007-12-11 22:01:26 | 显示全部楼层
不需要同步,是OS保证的。全双工操作。
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-5-20 09:47 , Processed in 0.020814 second(s), 7 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表