线程挂起后再起用的问题 ( 积分: 100 )

  • 主题发起人 主题发起人 tsxq
  • 开始时间 开始时间
T

tsxq

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序中需要对客户端传来的用户名和密码进行查询,想编个线程调用Query查询(已经知道怎么编)。现在的问题是因为会多次使用这个线程,我想在用完它后不退出(这个我也知道怎么设置),但下次再起用它时,我要传入两个参数(姓名,密码),我不知道该怎么传入这两个参数和重新启动这个线程了。请大侠赐教!
 
我的程序中需要对客户端传来的用户名和密码进行查询,想编个线程调用Query查询(已经知道怎么编)。现在的问题是因为会多次使用这个线程,我想在用完它后不退出(这个我也知道怎么设置),但下次再起用它时,我要传入两个参数(姓名,密码),我不知道该怎么传入这两个参数和重新启动这个线程了。请大侠赐教!
 
请高手帮忙嘛!
 
我也想知道:)
 
比如TTestThread = class(TThread)
……
private
FUserName, FPassword: string;
public
property UserName : string read FUserName write FUserName;
……
TTestThread .Suspend 挂起
TTestThread .Resume 复苏
这样不可以吗?
 
这是我看过的例子。
第一次使用时这样:
DataThread:= TClientDataThread.Create(true);
....//变量设置等等
DataThread.Resume;
因为我没有设置运行完自动释放线程(也就是缓存着),我想知道下次调用时用什么命令?还用Create(true)吗?
你提供的挂起,我在资料中看到过它的意义,但在程序或线程的什么地方使用?
我的线程虽然没有释放,但每一次传入的参数值是不同的,是挂起后重新设置了参数再复苏还是每次都要学我上面的例子中Create(true)后设置?
请指教!
 
TTestThread .Suspend挂起,复苏前设置相应的参数,然后再Resume
 
比如TTestThread = class(TThread)
……
private
FUserName, FPassword: string;
public
property UserName : string read FUserName write FUserName;
……
以上传递参数
procedure Execute;
begin
while not Terminateddo
begin
.......
//处理过程
.....
Suspend;
//挂起
end;
end;

需要时Resume;
 
接受答案。
 
后退
顶部