专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > C++ Builder

在线程中访问主窗体的ClientSocket控件,安全吗?解决方法

发布时间:2011-06-28 14:03:02 文章来源:www.iduyao.cn 采编人员:星星草
在线程中访问主窗体的ClientSocket控件,安全吗?

 我在主窗体有个ClientSocket控件,另外一个线程中,取队列中的数据,并把队列中的数据给发送出去。

 这个子线程中需要访问主窗体(主线程)中的ClientSocket控件:
 
 子线程如下:
 
  Form1->ClientSocket1->Socket->SendBuf(bufdata,Len);

这样就是多线程程序,会可能存在主窗体和子线程同时访问这个 ClientSocket不同操作。这样安不安全,冲不冲突。

如果存在,该怎样处理。

------解决方案--------------------
如果操作不频繁,问题不大,
如果操作频繁,建议设置个变量限制一下,不要这个发送过程中,另一个线程又来发送数据。
------解决方案--------------------
线程间同时操作某一对象或者某一变量的话 用线程临界区
------解决方案--------------------
就算访问不频繁,也不能保证不冲突,同一时刻多个线程完全有可能同时访问同一个对象. 用临界,信号灯等同步机制才保险.
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: