当前位置: 技术问答>linux和unix
linux系统怎么给socket加锁
来源: 互联网 发布时间:2015-12-08
本文导语: 多个子进程需要给同一个socket发一段数据.这段数据不能乱的,所以在一个子进程发的时候,其他子进程不能发.请问怎么实现.最好有代码,没有代码 有思路也可以. 谢谢大虾 | 使用信号量 ...
多个子进程需要给同一个socket发一段数据.这段数据不能乱的,所以在一个子进程发的时候,其他子进程不能发.请问怎么实现.最好有代码,没有代码 有思路也可以.
谢谢大虾
谢谢大虾
|
使用信号量
|
你试下文件锁能不能用在socket 上,我只是给你个建议.
具体测试的话,你可以写一个测试程序,发一个很大的数据包,比如全部发'a',然后将其放入后台.运行.
然后,改为全部发'b',也装入后台.
如果你收到的数据有交叉,说明不行.
具体测试的话,你可以写一个测试程序,发一个很大的数据包,比如全部发'a',然后将其放入后台.运行.
然后,改为全部发'b',也装入后台.
如果你收到的数据有交叉,说明不行.
|
用POSIX 库
pthread_mutex_init
pthread_mutex_destroy
pthread_mutex_lock
pthread_mutex_unlock
你用这个作线程间的互斥,和windows里的临界区用法差不多,一看就会
pthread_mutex_init
pthread_mutex_destroy
pthread_mutex_lock
pthread_mutex_unlock
你用这个作线程间的互斥,和windows里的临界区用法差不多,一看就会