Z
zhaoxueli
Unregistered / Unconfirmed
GUEST, unregistred user!
public
MyThread:TIdPeerThread;
//在IdTCPServer1的OnExecute事件中
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
MyThread:= AThread; //让公共变量获得该线程,以便在别处使用
end;
//可以使用MyThread
procedure TForm1.Button1Click(Sender: TObject);
begin
MyThread.Connection.WriteLn('test');
end;
问题是当有多个客户端接入时,本来MyThread是对应A客户端,正在操作数据,当B连入时
此时MyThread就变成对应B端了,那就会导致操作了一半的数据不再是和A而变成和B连接了
一般怎么处理?能否代码示例一下
MyThread:TIdPeerThread;
//在IdTCPServer1的OnExecute事件中
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
MyThread:= AThread; //让公共变量获得该线程,以便在别处使用
end;
//可以使用MyThread
procedure TForm1.Button1Click(Sender: TObject);
begin
MyThread.Connection.WriteLn('test');
end;
问题是当有多个客户端接入时,本来MyThread是对应A客户端,正在操作数据,当B连入时
此时MyThread就变成对应B端了,那就会导致操作了一半的数据不再是和A而变成和B连接了
一般怎么处理?能否代码示例一下