Windows:GDI的处理能否比创建它的过程更长久?

时间:2013-01-31 15:44:02

标签: windows swt gdi

我正在尝试在SWT应用程序中查找仅限Windows的问题的原因,有时会遇到以下错误:

org.eclipse.swt.SWTError: No more handles

跟踪抛出此错误的行会显示它正在调用CreateWindowEx Windows API函数,如果没有GDI句柄可用,它将失败。

通过远程桌面对我们的某个Windows Server 2008构建服务器上的应用程序运行测试时,会定期发生错误。

到目前为止,我发现并修复了SWT Image和Font对象的一些泄漏,其中一些导致每次调用应用程序时泄漏了数百个GDI句柄。

但是,我正在努力验证(使用故意使用大量句柄的测试应用程序)我已经修复了问题。我的测试应用程序达到10,000 GDI句柄的每进程限制。串行运行不会导致问题;同时运行其中的两个或三个。

所以,最后我的问题是:

在任何情况下,Windows上的GDI句柄是否可能比创建它的过程更长?

如果是这样,是否有一个工具可以用来查看这些“泄露的”GDI句柄的数量?

0 个答案:

没有答案