System.Classes.TThread.StaticQueue

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

Delphi

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

C++

static void __fastcall StaticQueue _DEPRECATED_ATTRIBUTE1("From C++ just use Queue 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

説明

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

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

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

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

Synchronize とは違って、現在のスレッドの実行が継続されます。メイン スレッドは、最終的にキューに入っているすべてのメソッドを処理します。

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

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

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

関連項目