高手来帮我看看!!郁闷了一天了! ( 积分: 100 )

  • 主题发起人 主题发起人 缥缈轩
  • 开始时间 开始时间

缥缈轩

Unregistered / Unconfirmed
GUEST, unregistred user!
2个通道!
一进一出!不是堵塞方式的!
第1个进去后,第2个按照第1个通道传递过来的IDX进行发送ID,但是第2条进入第1个通道的时候,会将这个ID改变!这样如果2条指令速度太快的话就会将第1条指令ID变成第2条指令的ID.如果采用堵塞方式,就会造成第2条指令需要等待第1条指令执行完毕才能执行第2条.这样不符合程序的要求!然后我采用了list,顺序添加信息!发送的时候也是按顺序,发送list信息,发送完一条,del一条.这样还是会产生冲突,不知道是不是转发服务器使用了并发技术.我就不明白..
 
2个通道!
一进一出!不是堵塞方式的!
第1个进去后,第2个按照第1个通道传递过来的IDX进行发送ID,但是第2条进入第1个通道的时候,会将这个ID改变!这样如果2条指令速度太快的话就会将第1条指令ID变成第2条指令的ID.如果采用堵塞方式,就会造成第2条指令需要等待第1条指令执行完毕才能执行第2条.这样不符合程序的要求!然后我采用了list,顺序添加信息!发送的时候也是按顺序,发送list信息,发送完一条,del一条.这样还是会产生冲突,不知道是不是转发服务器使用了并发技术.我就不明白..
 
.....没有人可以帮我吗?
 
哎 我以前写一个多线程下载的也遇到类似的问题

最后的结果是我在线程里用临界区解决的同步问题。。。
你也可以试试,在2通道发送的部分设临界区来保证IDX不会被改变
 
但是这个IDX是客户端的连接线程(winscoket)
 
后退
顶部