DirectDraw 7是非常舊的API,但我們有很多遺留代碼。什麼可能會導致IDirectDrawSurface ::釋放塊並永不返回?
最近我發現directdraw可能會阻塞它的一些接口調用,如IDirectDrawSurface :: Release,並且永遠不會返回。但有時他們不會。
我找不到谷歌的任何信息,所以我來到這裏。
希望你能幫助我或告訴我在哪裏可以找到幫助。
非常感謝。
DirectDraw 7是非常舊的API,但我們有很多遺留代碼。什麼可能會導致IDirectDrawSurface ::釋放塊並永不返回?
最近我發現directdraw可能會阻塞它的一些接口調用,如IDirectDrawSurface :: Release,並且永遠不會返回。但有時他們不會。
我找不到谷歌的任何信息,所以我來到這裏。
希望你能幫助我或告訴我在哪裏可以找到幫助。
非常感謝。
死鎖意味着你是多線程的DirectDraw?這不是一個安全的計劃。你應該避免這樣做。
道歉,如果這不是原因。
是的,你是對的。當表面「鎖定」時,任何其他表面的任何調用都將被阻止,直到表面「解鎖」。這在我的程序中造成了僵局。 – ablmf 2009-07-22 06:34:54
http://pastebin.com/d27fd25a5調用堆棧 – ablmf 2009-07-08 11:04:54