Main Content

マルチスレッド環境での再呼び出し可能なコードの呼び出し

再呼び出し可能なコードを呼び出すには、次を実行する main 関数を作成します。

  • ヘッダー ファイル primary_function_name.h. を含める。

  • 各スレッドに、グローバル メモリ割り当ての構造体 primary_function_nameStackData にメモリを割り当てる。

  • アルゴリズムが永続データまたはグローバル データを使用する場合に、グローバル構造体 primary_function_namePersistentData にメモリを割り当てる。スレッド間でやり取りがある場合、このメモリを一度のみルート プロセスに割り当てる。それ以外の場合は、スレッドごとにメモリを割り当てることができる。

  • 次の関数を呼び出すスレッド関数を含める。

    • primary_function_name_initialize

    • primary_function_name

    • primary_function_name_terminate

    MATLAB® 関数を C/C++ ライブラリ関数または C/C++ 実行可能ファイルに変換する場合、MATLAB Coder™ は、2 つのハウスキーピング関数を生成します。生成された C/C++ 関数を呼び出すコード内でこれらの関数を呼び出します。詳細については、生成コードの展開を参照してください。

  • 各スレッドを初期化し、スレッド関数への最初のパラメーターとしてメモリ割り当ての構造体へのポインターに渡す。

  • グローバル構造体に使用されたメモリを解放する。

マルチスレッドの例