多线程问题,急急
***** 不使用多线程时,使用了第归函数 *****
procedure myFoo(s:string);
var myArray:array of string;
begin
... 处理功能....
setLength(myArray,n); //根据条件取得数组
for i:=0 to high(myArray) do begin
myFoo(myArray[i]); //第归
end;
end;
*********************** 多线程 **********************
我想把上面的函数功能应用到多线程中,需要最多3个线程运行,
该怎么做?
procedure TmyThread.ThreadsDone(Sender: TObject);
begin
Dec(frmMain.iFlag);
if frmMain.iFlag=0 then ....
end;
procedure TmyThread.Execute;
begin
inc(frmMain.iFlag);
myFoo(sStart);
end;
procedure TmyThread.myFoo(s:string);
var myArray:array of string;
begin
... 处理功能....
setLength(myArray,n); //根据条件取得数组
for i:=0 to high(myArray) do begin
myFoo(myArray[i]); //第归 //???? 这里可以创建线程吗?
end;
end;