- 176 名前:175 mailto:sage [2018/09/28(金) 12:12:50.63 ID:frk51yg8.net]
- テクスチャ読み込み中は特に自分ではD3DDeviceの書き換えは行っていなかった(と思う)のですが
一応念のために以下みたいなクラスを作って排他処理を徹底したら直りました! しかも20秒くらいかかってたテクスチャ読み込みが何故か5秒くらいで終わるようになって いいことずくめでw 最高っす。 class CLockObject { protected: CRITICAL_SECTION m_CriticalSection; public: CLockObject(){ InitializeCriticalSection(&m_CriticalSection); } void Lock(void){ EnterCriticalSection(&m_CriticalSection); } void UnLock(void){ LeaveCriticalSection(&m_CriticalSection); } ~CLockObject(){ DeleteCriticalSection(&m_CriticalSection); } }; スレッド1 LockObject.Lock(); 〜 Direct3D描画処理 〜 LockObject.UnLock(); スレッド2 LockObject.Lock(); 〜 テクスチャ読み込み 〜 LockObject.UnLock();
|

|