私の質問は、アプリケーションの改善の種類/種類に関するものです。スレッド速度を向上させたい(スレッドの複雑さを向上させることはできません)。私の質問は、関数のパラメーターとして整数/整数の代わりにバイトを型として使用するかどうかです。これにより、速度が変更/改善されますか?
配列を送信する代わりに、これらの配列へのポインターを送信すると、この手法で速度が向上しますか?
スレッドの速度を向上させるために他にどのようなトリックを使用できますか(複雑さを除く)
上記のコードは、私が使用しているものを単純化したものです。
Type TArray = array of integer;
Type PArray = ^TArray;
Procedure TMyThread.ProcessFunction(iNr:integer; vArray:PArray);
begin
vArray^[iNr-2]:=5;
//......
end;
Procedure TMyThread.Execute;
var vArray:TArray;
i,iNr:integer;
begin
Randomize;
While Not Terminated do
begin
iNr:=Random(240);
SetLength(vArray,iNr);
for i:=0 to iNr-1 do
vArray[i]:=i+2
ProcessFunction(iNr,@Array);
end;
end;
これを改善する方法はありますか?