リエントラント
リエントラント(reentrant, re-entrant、再入可能)
リエントラント(再入可能)な場合、グローバル変数や静的変数を持たない
静的変数はC言語だとstaticの変数がついたやつ
再入可能で備えておかないといけない性質は、
コード領域は各タスクで共用
データ領域は各タスクごとに持つ
POSIXの*_rで終わる関数はリエントラントの性質を持つ 確認用
Q. リエントラント
関連
調査用
Wikipedia.icon
Wikipedia.icon
メモ
リエントラント(英: reentrant / re-entrant、再入可能)およびリエントランシー(英: reentrancy / re-entrancy、再入可能性)とは、あるプログラムやサブルーチンの実行を完了する前に、割り込みなどにより、同じプログラムやサブルーチンを実行しても安全だという性質を指す。割り込みは分岐や呼び出しなどの内部的な動きによって生じる場合もあるし、ハードウェア割り込みやシグナルなどの外部の動きによって生じる場合もある。割り込みの実行を完了後に、割り込み前の実行に影響を与えずに継続できる。
リエントラントなコードは、静的変数やグローバル変数を保持しない。
リエントラントなコードは自分のコードを書き換えない。
リエントラントなコードは、リエントラントでないプログラムやサブルーチンを呼び出さない。