>>893
>volatile として修飾されるフィールドは、次の種類に制限されます。
>参照型
>ポインタ型 (unsafe コンテキスト内)
>sbyte、byte、short、ushort、int、uint、char、float、bool の各型
>列挙型と byte、sbyte、short、ushort、int、または uint の列挙基本型

スレッドの同期が必要な部分が大量にふくれあがったその設計がアウトなんだよ。
全部捨てて書き直せ。
そうしないといつまでたっても再現性の悪いスレッドの同期が抜けたことによるバグがうじゃうじゃ出てくるよ。