マルチスレッドのサポートの有効化
このセクションの内容:
スレッド化されたアプリケーションで使用するマルチスレッドサポートを構成するには、以下の手順に従います。
マルチスレッドサポートを有効にするには、以下の手順に従います。
危険
コマンドラインでは、リンカオプション
‑‑threaded_libを使用します。C++を使用する場合、IDEはコンパイラオプション
--guard_callsを自動的に使用して、動的イニシャライザを持つ関数-静的変数が、複数のスレッドによって同時に初期化されないようにします。注意
IDEで、[プロジェクト]>[オプション]>[一般オプション]>[ライブラリ設定]>[ライブラリでスレッドのサポートを有効にする]を選択します。これは、リンカオプション
--threaded_libを呼び出し、C++を使用する場合、IDEはコンパイラオプション--guard_callsを自動的に使用して、動的イニシャライザを持つ関数-静的変数が、複数のスレッドによって同時に初期化されないようにします。ランタイムライブラリ内でビルトインのマルチスレッドサポートを補完するには、以下も実行する必要があります。
ライブラリの システムロックインターフェース のコードを実装する。
ファイルストリームを使用している場合は、ライブラリの ファイルストリームロックインターフェース のコードも実装する。
実装コードは、スレッドの作成と破棄、およびライブラリのTLSアクセス方法を処理します。
DLib_Threads.hファイルで必要な宣言の関数を見つけることができます。また詳細もあります。プロジェクトをビルドします。
注記
サードパーティのRTOSを使用している場合、IARのツールでマルチスレッドのサポートを有効にする方法については、その会社のガイドラインを確認してください。