C
cjsam
Unregistered / Unconfirmed
GUEST, unregistred user!
我用INDY控件包做一个UDPserver服务器。
主要这样实现的:
有个IDUdpServer,IDUdpClient,2个控件,IDUdpServer监听某个固定端口。收到client1发来的一个UDP数据包,就新建一个线程来处理这个udp,
在处理过程中,把这个udp解析完成后,需要向client2发送一个数据包过去,在当前线程中就调用IDUdpClient发送一个报文给client2客户端。client2如果收到后,它会发个响应过来,但是它的响应,不是从收到的udp包里直接提取IP,PORT来给的响应,它的响应是直接响应到IDUdpServer上去。
现在我需要判断是否我发给client2的udp有没有发送成功,等待3分钟,如果没有成功,我要重发。但是目前的问题是,我在等待client2的udp有没有发送成功的过程是,还在先前创建的哪个线程里等待,那个线程还没结束。而client2给的响应却发送到IDUdpServer这个控件里去了,请问大家有什么好的办法来解决这个问题吗?
主要这样实现的:
有个IDUdpServer,IDUdpClient,2个控件,IDUdpServer监听某个固定端口。收到client1发来的一个UDP数据包,就新建一个线程来处理这个udp,
在处理过程中,把这个udp解析完成后,需要向client2发送一个数据包过去,在当前线程中就调用IDUdpClient发送一个报文给client2客户端。client2如果收到后,它会发个响应过来,但是它的响应,不是从收到的udp包里直接提取IP,PORT来给的响应,它的响应是直接响应到IDUdpServer上去。
现在我需要判断是否我发给client2的udp有没有发送成功,等待3分钟,如果没有成功,我要重发。但是目前的问题是,我在等待client2的udp有没有发送成功的过程是,还在先前创建的哪个线程里等待,那个线程还没结束。而client2给的响应却发送到IDUdpServer这个控件里去了,请问大家有什么好的办法来解决这个问题吗?