bluesum 0 Posted February 4, 2023 (edited) I am using delphi 11.2 in windows Full source attached Either one only run 1 thread,please help me,thanks. ==================================================== procedure TForm1.btnParallelForClick(Sender: TObject); TParallel.For(0,System.CPUCount,procedure(I:Int64) var thinkstep: string; begin MinMax(board,mutiSideisRed,8,thinkstep); end; end); ===================================================== procedure TForm1.btnTTaskClick(Sender: TObject); var tasks: array of ITask; thinkstep : array of string; SW: TStopwatch; a:integer; begin Setlength (tasks ,System.CPUCount); Setlength (thinkstep ,System.CPUCount+1); ReInitboard; SW :=TStopWatch.Create; for a := 0 to System.CPUCount-1 do begin thinkstep[a+1] := ''; tasks[a] := TTask.Create (procedure () begin PMinMax(board,mutiSideisRed,8,thinkstep[a]); end); end; for a := 0 to System.CPUCount-1 do tasks[a].Start; TTask3.zip Edited February 4, 2023 by bluesum Share this post Link to post
Stano 143 Posted February 4, 2023 36 minutes ago, bluesum said: I am using delphi 12.2 in windows I want Delphi too Sure, it's a typo 11.2 Share this post Link to post
programmerdelphi2k 237 Posted February 4, 2023 not, it'a Beta with "keygen" from "internet" Share this post Link to post
bluesum 0 Posted February 4, 2023 4 minutes ago, Stano said: I want Delphi too Sure, it's a typo 11.2 Yes,I corrected the message Share this post Link to post
bluesum 0 Posted February 9, 2023 embarcadero reply that "Each Task runs on a core and the scheduling of each task is decided by an internal code that understands which core is relatively free and gives that core the load. There's no guarantee that all cores are going to be used for every task." original reply message picture: https://ibb.co/K5jd9bk Share this post Link to post