CNDEV
...
...
账号
登
登录
先
先随便看看
中国开发网
: 论坛:
程序员情感CBD
: 贴子 168649
bjwf
·
2005-07-26 05:53:49
·
阅读: 375
这肯定没有问题.如果多个线程读或写可能会有问题.
<空>
相关信息:
今天第一个技术贴:关于unix socket
(54字)
(
老玉米
[548]
2005-07-26 13:51
)
这肯定没有问题.如果多个线程读或写可能会有问题.
(空) (
bjwf
[374]
2005-07-26 13:53
)
多个肯定要枷锁了。。问题是两个线程操作一个socket handle,一个度一个写,需不需要同步?
(空) (
老玉米
[670]
2005-07-26 13:59
)
我认为不需要.请大家发表意见.
(空) (
bjwf
[380]
2005-07-26 14:00
)
需要确认一下,如果可以,我们只需要对写加锁就可以了。。。
(空) (
老玉米
[354]
2005-07-26 14:02
)
如果写到一半的时候,它就来读,会有什么问题没?
(空) (
pcplayer
[442]
2005-07-26 14:05
)
缓冲区肯定是不同的,就是不知道有没有其他内部变量。这个要对socket实现
(8字)
(
老玉米
[422]
2005-07-26 14:07
)
我觉得socket的读和写分别有自已的buffer,所以无论是阻塞还是非阻塞的socket都不会有问题.
(空) (
bjwf
[598]
2005-07-26 14:08
)
这个只要自己定义好包格式就可以了,其它系统会完成的
(空) (
空空空
[344]
2005-07-26 14:11
)
不需要加锁,要考虑心跳,如果读写之间有关系,还要考虑原去原回的ID号
(空) (
空空空
[346]
2005-07-26 14:09
)
你后面说的情况我们都不需要考虑。
(空) (
老玉米
[335]
2005-07-26 14:11
)
原去原回的ID号是需要考虑的,也就是sequence number,否则客户端不知道哪个回应对应哪个请求.
(空) (
bjwf
[487]
2005-07-26 14:25
)
对头,这是一个典型的异步应用
(空) (
空空空
[368]
2005-07-26 14:28
)
我的意思是,这些都已经解决了。。像然大家集中在我们的核心问题上变态。
(空) (
老玉米
[419]
2005-07-26 14:28
)
一般长连接都是这样操作的
(空) (
空空空
[449]
2005-07-26 14:03
)
安全
(12字)
(
holly
[379]
2005-07-26 14:32
)
呵呵,老大发言了,可以放心了
(空) (
bjwf
[392]
2005-07-26 14:40
)
估计老大下次来北京
(10字)
(
老玉米
[432]
2005-07-26 14:42
)
木事
(空) (
Yxd
[371]
2005-07-26 14:35
)
我脚得相当于问一个县城new(or malloc之类的)、另一个delete,问堆是否安全。
(空) (
Yxd
[385]
2005-07-26 14:39
)
偶到是遇到过一个很奇怪的问题,到现在还没想通为什么.
(142字)
(
bjwf
[522]
2005-07-26 14:45
)
这个就不县城安全了,分配出来的缓冲或对象的读写(包括释放或reallocate之类的)就需要应用者来做线程安全了。
(空) (
Yxd
[509]
2005-07-26 14:48
)
不是线程安全的问题吧。。。
(61字)
(
老玉米
[443]
2005-07-26 14:52
)
但是能不能保证其它线程对这个内存的读写知道这块内存是否已被释放?
(空) (
Yxd
[468]
2005-07-26 14:55
)
就两个线程啊。。。
(17字)
(
老玉米
[423]
2005-07-26 14:57
)
哦,mq没咋用过,但是windows中的pipe之类的内存分配的方式有些讲究,会不会这个也有?
(空) (
Yxd
[477]
2005-07-26 15:03
)
Unix下不知道,Windows下是安全的。
(11字)
(
GoodHope
[447]
2005-07-26 16:35
)
欢迎光临本社区,您还没有登录,不能发贴子。请在
这里登录