T
tswhq
Unregistered / Unconfirmed
GUEST, unregistred user!
在发送数据时可在线程中来发送数据
但在数据接收时事件在主线程中,
procedure TForm1.IdUDPServerUDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
begin
end;
这时我们需怎样写程序呢?
另由于udp不象tcp那样稳定,我们在发数据时会采用
发送方 接收方
第1步 第2步
已发送字节+数据--------------> 已接收字节 是否等于 刚收到的已发送字节
相等 不相等
重复第1步直到结束 <---------- 发送Next包<---第3步---->发送Error包
我看了好多程序都是这样写的,但是没有相关的机制来判断当第1步发送数据后,如
果网络发生异常,造成接受方未受到数据,这时就会出现双方都停止的现象,怎样才
能解决呢?(不会用时间控件去监控吧???)
但在数据接收时事件在主线程中,
procedure TForm1.IdUDPServerUDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
begin
end;
这时我们需怎样写程序呢?
另由于udp不象tcp那样稳定,我们在发数据时会采用
发送方 接收方
第1步 第2步
已发送字节+数据--------------> 已接收字节 是否等于 刚收到的已发送字节
相等 不相等
重复第1步直到结束 <---------- 发送Next包<---第3步---->发送Error包
我看了好多程序都是这样写的,但是没有相关的机制来判断当第1步发送数据后,如
果网络发生异常,造成接受方未受到数据,这时就会出现双方都停止的现象,怎样才
能解决呢?(不会用时间控件去监控吧???)