System.Classes.TThread.StaticSynchronize

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

class procedure StaticSynchronize(const AThread: TThread; AMethod: TThreadMethod); static; deprecated 'From C++ just use Synchronize now that it is just a static method';

C++

static void __fastcall StaticSynchronize _DEPRECATED_ATTRIBUTE1("From C++ just use Synchronize now that it is just a static method") (TThread* const AThread, TThreadMethod AMethod);

プロパティ

種類 可視性 ソース ユニット
procedure
function
public
System.Classes.pas
System.Classes.hpp
System.Classes TThread

説明

警告: StaticSynchronize は非推奨になっています。 Synchronize を使用してください。

メイン スレッド内でメソッド呼び出しを実行します。

StaticSynchronize を利用すると、AMethod で指定された呼び出しがメイン スレッドを使用して実行されます。これによって、マルチ スレッドによる競合を避けることができます。現在のスレッドは、AThread パラメータとして渡されます。

メソッドがスレッドセーフかどうかわからない場合は、確実にメイン スレッドで実行されるように、StaticSynchronize メソッド内からそのメソッドを呼び出します。

メソッドがメイン スレッドで実行されている間は、現在のスレッドの実行は一時停止されます。

警告:  メイン スレッド内から StaticSynchronize を呼び出さないでください。無限ループに陥る可能性があります。

メモ:  StaticSynchronize は、単に同じパラメータで Synchronize を呼び出すだけです。

メモ:  クリティカル セクションや、マルチリードで排他書き込みのシンクロナイザを使用して、スレッドセーフでないメソッドを保護することもできます。

関連項目