如何将参数传入新开的线程?急,在线等待(100分)

  • 主题发起人 主题发起人 watercontainer
  • 开始时间 开始时间
W

watercontainer

Unregistered / Unconfirmed
GUEST, unregistred user!
在下列程序中,我想将
(TIdPeerThread *AThread,
TIdHTTPRequestInfo *ARequestInfo, TIdHTTPResponseInfo *AResponseInfo)
这三个参数传入TGetThread* AGetThread线程,可是进入线程后所有这三个参数所指对象的值都是NULL,但在主线程中这三个对象是有值的,请问要如何处理?谢谢
void __fastcall TForm1::IdHTTPServer1CommandGet(TIdPeerThread *AThread,
TIdHTTPRequestInfo *ARequestInfo, TIdHTTPResponseInfo *AResponseInfo)
{
int FastestRow=FindFastestRow();
if(FastestRow <= 0)return;
TGetThread* AGetThread=new TGetThread(true,
AThread,
ARequestInfo,
AResponseInfo,
IdHTTPServer1);
CurProxyRow=FastestRow;
AGetThread->TestRow=FastestRow;
AGetThread->Resume();
 
看看TGetThread的定义先。
不过我一般不会这样子做,一般是在线程里设置几个变量,创建后对变量进行赋值,然后启动线程。
 
后退
顶部