私はdelphi XE2で比較的新しいです。このコードが好きなら、何かについて知りたいです
TSomeClass=class
strict private
class var
FCounter:integer;
public
class procedure SomeProcedure();static
end;
implementation
class procedure SomeProcedure()
begin
inc(FCounter);
end;
initialization
begin
FCounter:=0;
end;
finalization
begin
FCounter:=0;
end;
私の理解では、 SomeProcedure() はメモリ上で静的になり、単一のインスタンス、
私の質問
- TSomeClass が多くのスレッドによってアクセスされる場合、TSomeClass はスレッドセーフかどうか? または、スレッド間でオーバーラップしますか?
- はいの場合、スレッドごとにクリティカル セクションが必要ですか? またはその種の方法の別のアプローチ...
- 2 つの異なるスレッドがこのメソッドにアクセスした場合、FCounter はどうですか? FCounter は、最後の値から順番にカウントしますか、それともゼロから始まる別の値を持つ別のスレッドですか?