E2189 スレッドローカル変数は関数内では宣言できません (Delphi)
エラーと警告のメッセージ(Delphi) への移動
スレッドローカル変数はグローバルスコープで宣言しなければなりません。
program Produce; procedure NoTLS; threadvar x : Integer; begin end; begin end.
{ スレッド変数は手続きに対してローカルには宣言できない }
program Solve; threadvar x : Integer; procedure YesTLS; var localX : Integer; begin end; begin end.
{ このエラーには簡単な回避方法が 2 つある。1 つは threadvar セクションをグローバルスコープへ移動する方法である。もう 1 つは,手続き内の threadvar を通常の var セクションに変更する方法である。コンパイラのヒントがオンの場合には,宣言しても使用されない localX についてのヒントが表示される }