K Kensa Unregistered / Unconfirmed GUEST, unregistred user! 2005-07-02 #1 想使用idTcpClient接收数据,但是使用ReadStream、ReadBuffer等相关函数会导致阻塞,想在调用这些函数之前判断缓冲区内有没有数据,确发现idTcpClient没有提供相关的接口。又不想使用idAntiFrozen。 哪位大侠能够指点一二?
想使用idTcpClient接收数据,但是使用ReadStream、ReadBuffer等相关函数会导致阻塞,想在调用这些函数之前判断缓冲区内有没有数据,确发现idTcpClient没有提供相关的接口。又不想使用idAntiFrozen。 哪位大侠能够指点一二?
K Kensa Unregistered / Unconfirmed GUEST, unregistred user! 2005-07-02 #2 想使用idTcpClient接收数据,但是使用ReadStream、ReadBuffer等相关函数会导致阻塞,想在调用这些函数之前判断缓冲区内有没有数据,确发现idTcpClient没有提供相关的接口。又不想使用idAntiFrozen。 哪位大侠能够指点一二?
想使用idTcpClient接收数据,但是使用ReadStream、ReadBuffer等相关函数会导致阻塞,想在调用这些函数之前判断缓冲区内有没有数据,确发现idTcpClient没有提供相关的接口。又不想使用idAntiFrozen。 哪位大侠能够指点一二?
Z zhengdehei Unregistered / Unconfirmed GUEST, unregistred user! 2005-07-02 #3 建立线程一直 Resume,给你一段 indy自带的例子 procedure TClientHandleThread.Execute; begin while not Terminated do begin if not ClientFrmMain.Client.Connected then Terminate else try ClientFrmMain.Client.ReadBuffer(CB, SizeOf (CB)); Synchronize(HandleInput); except end; end; end;
建立线程一直 Resume,给你一段 indy自带的例子 procedure TClientHandleThread.Execute; begin while not Terminated do begin if not ClientFrmMain.Client.Connected then Terminate else try ClientFrmMain.Client.ReadBuffer(CB, SizeOf (CB)); Synchronize(HandleInput); except end; end; end;
H hzxhzx123 Unregistered / Unconfirmed GUEST, unregistred user! 2005-08-10 #4 这个是专门读取TCP缓冲区数据的: Size:=IdTCPClient.ReadFromStack(False, -1, False); 参数是否引发异常和超时毫秒数 Size返回大于0 表示有数据
K Kensa Unregistered / Unconfirmed GUEST, unregistred user! 2005-08-14 #5 To hzxhzx123 这个Size是否就是可读的数据大小?