次の方法で共有


CriticalRegionType 列挙型

コンテキストが存在するクリティカル領域の種類。

enum CriticalRegionType;

メンバー

名前

説明

InsideCriticalRegion

クリティカル領域内にコンテキストが存在することを示します。 クリティカル領域内にある場合、非同期中断はスケジューラに表示されません。 そのような中断が発生した場合、リソース マネージャーは、スケジューラをもう一度呼び出す代わりに、スレッドが実行可能になるまで待機してそれを再開します。 そのような領域内で取得されたロックには、十分な注意が必要です。

InsideHyperCriticalRegion

ハイパー クリティカル領域内にコンテキストが存在することを示します。 ハイパー クリティカル領域内にある場合、同期中断と非同期中断はどちらもスケジューラに表示されません。 そのような中断またはブロックが発生した場合、リソース マネージャーは、スケジューラをもう一度呼び出す代わりに、スレッドが実行可能になるまで待機してそれを再開します。 そのような領域で取得されたロックは、その領域の外部で実行しているコードと共有できないようにする必要があります。 共有すると、予期しないデッドロックが発生します。

OutsideCriticalRegion

クリティカル領域の外部にコンテキストが存在することを示します。

必要条件

ヘッダー: concrtrm.h

名前空間: Concurrency

参照

参照

Concurrency 名前空間

IUMSThreadProxy 構造体