通过SOCKET发送数据,是否可以判定数据已经发送成功(100分)

  • 主题发起人 主题发起人 hellenlong
  • 开始时间 开始时间
H

hellenlong

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在写一个消息中转程序,有一个线程专门读取消息列表,并发送消息.
但是,由于我没有办法判定消息是否发送成功,所以我循环发送,从而导致发送几遍的
数据.虽然,客户端收到消息后马上给出反馈.但是,客户端还是会接受n次数据.
有没有办法判定数据发送成功?例如用户掉线的时候等.
 
对方如果收到数据告诉你,他收到了数据只有这个才能说明对方收到了数据。
 
TO:张无忌,
  那用什么方式,可以使对方接受到数据而且只是一次呢?
 
这样给SendNewsThread发消息
PostMessage(SendNewsThread.Handle,WM_SENDBUFFER,0,0);
但是,
inherited;
while not terminated do
begin
GetMessage(AMsg,0,0,0);这儿始终接不到消息,为什么???????
case AMsg.message of
 
tcp协议自动保证的
 
to:tolucky01
但是客户段非正常退出,那么服务器端检测到吗?显然是不可仪的啊
 
建议一套应答机制就可以保证数据能发送到。
 
PostThreadMessage(SendNewsThread.threadidWM_SENDBUFFER,0,0);
这样就ok了:)
在问一个问题???
有两个线程对队列操作,一个push一个pop,会不会有影响,如何进行处理呢?
 
有两个线程对队列操作,一个push一个pop,会不会有影响,如何进行处理呢???????
 
多人接受答案了。
 
后退
顶部