救救我吧,在多线程中使用UDP的问题,问了好几遍了,难道真的这么难吗?(200分)

  • 主题发起人 主题发起人 zzy123
  • 开始时间 开始时间
Z

zzy123

Unregistered / Unconfirmed
GUEST, unregistred user!
我在多线程中创建一个UDP,发送数据正常,但不知如何接收数据,为其ondatareceive事件设置过程不管用
 
在程序创建时候创建UDP,定义UDP接受到的消息。再拦截消息。应该可以。
 
你用的是用消息队列来异步I/O的UDP,在线程里没有消息循环如何得到
数据到来消息了???
用INDY的UDP控件,或者自己用API写
 
用indy的UDP给NMUDP发送数据,NMUDP首先接受到正确的数据,紧接着又接到一堆莫名其妙的数据,不知为什么?
 
用recvstream ,不要用什么recvbuffer
 
能给个例程吗?
 
udp协议是监听指定的端口,如果有数据到达就会接收,
如果你用多线程那你的端口怎么定义啊?他们只能使用一个端口啊,要不就是一个
线程一个端口!
 
有什么解决办法吗?
 
看看你的BUFFERSIZE是否设置正确。
线程中的ondatareceive事件是不会触发的,所以你应该在主线程中接受数据。
indy是自动支持多线程的。
 
我需要向多个网段内的IP发送UDP数据,我想用多线程来提高速度,难道没办法了吗?
 
那用广播或者多播
 
跨路由可以用广播吗?
 
可以,我在电脑报上看过一篇文章写消息的广播!
 
我试一试,过后给各位回报.
 
后退
顶部