DllMainとローダーロック
DllMainがローダーロックを保持した状態で呼ばれるという制約。呼べるAPIが大きく限られる。
- 概念URI
https://comcomponent.com/knowledge/dllmain-loader-lock/
- 最終確認日
- 2026-08-01
- 機械可読データ
- JSON-LD
この概念が関わる関係
- DllMainとローダーロックはデッドロック(deadlock)の原因になることがあります。DllMainはローダーロックを保持したまま呼ばれるため、その中で他スレッドと同期する・スレッドの終了を待つ・LoadLibraryを呼ぶといった操作はデッドロックを招く。スレッドを持つDLLは明示的な初期化・終了関数を公開し、DllMainは空に近いスタブにする。 / 確度: 確立した関係 / 確認日: 2026-08-02 出典
- DllMainとローダーロックはデッドロック(deadlock)の原因になることがあります。DllMainはローダーロックを保持した状態で呼ばれるため、その中で他スレッドと同期する・スレッドの終了を待つ・LoadLibraryを呼ぶといった操作はデッドロックや不定動作の原因になる。 / 確度: 確立した関係 / 確認日: 2026-08-02 出典
- std::threadはDllMainとローダーロックと両立しません。スレッドを起動・合流するような初期化はDllMainの外(明示的な初期化関数)に出す必要がある。また/clrでコンパイルされるコードでは<thread>ヘッダー自体がブロックされる。 / 確度: 確立した関係 / 確認日: 2026-08-02 出典 出典
この概念を扱う記事
一次資料
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。