为什么APP Alwasy暂停在API函数ExtTextOut上 [英] Why APP alwasy suspend at API function ExtTextOut
问题描述
App主线程在屏幕上绘制视频,APP运行了一段时间(10天)后,有时APP会被锁定在API函数ExtTextOut,我不知道为什么可以阻止ExtTextOut.回调堆栈看起来像这样
the App main thread draw the video on the screen, after APP runing for a while (10 days), sometimes, APP will be locked at API function ExtTextOut, i have no idea why ExtTextOut can be blocked. the callback stack look like this
0012efb8 77f17fca ntdll!KiFastSystemCallRet
0012f528 77f1d41e gdi32!NtGdiExtTextOutW + 0xc
0012f554 629e1cfa gdi32!ExtTextOutA + 0x24 <-在这里我们调用API函数,并且该线程将永远挂起
0012f578 00db2fb0 LiveDisplay!COverlayTextOut :: TextOutA + 0x12a <-我们的函数,在我们内部调用API ExtTextOutA
0012efb8 77f17fca ntdll!KiFastSystemCallRet
0012f528 77f1d41e gdi32!NtGdiExtTextOutW+0xc
0012f554 629e1cfa gdi32!ExtTextOutA+0x24 <-- here we call API function and this thread will be suspend forever
0012f578 00db2fb0 LiveDisplay!COverlayTextOut::TextOutA+0x12a <- our function, inside we call API ExtTextOutA
APP在Windows XP 32位下运行.任何帮助将不胜感激.谢谢
APP runing under Windows XP 32bits. any help will be appreciated. thanks
推荐答案
您是否可能同时从多个线程访问GDI?
Are you perhaps accessing GDI from multiple threads at the same time?
您要传递给ExtTextOutA哪些参数?您是否已验证它们在锁定时是好的?
What arguments are you passing to ExtTextOutA? Have you verified that they are good at the time of lockup?
这篇关于为什么APP Alwasy暂停在API函数ExtTextOut上的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!