当 HDC 的 window 被摧毁时会发生什么?
What happens to an HDC when its window is destroyed?
我正在编写一个在后台与 HWND
和 HDC
一起使用的库。 ReleaseDC
接受一个 HWND
作为参数,但是如果 window 已经被销毁了怎么办? Windows 会自动释放 HDC
,还是会导致资源泄漏?
在 Windows 10 上测试时,似乎在 window 被销毁时自动释放使用 GetDC
检索的 DC。
创建 window、检索 DC 并销毁 window 的无限循环在第一次迭代后没有增加内存使用量。为了确保某些内部引用计数不会在不递减的情况下递增,我更改了循环以重复从同一个 window 获取 DC。这不仅增加了每次迭代的内存使用量,而且使我的整个系统变得缓慢和不稳定。
我正在编写一个在后台与 HWND
和 HDC
一起使用的库。 ReleaseDC
接受一个 HWND
作为参数,但是如果 window 已经被销毁了怎么办? Windows 会自动释放 HDC
,还是会导致资源泄漏?
在 Windows 10 上测试时,似乎在 window 被销毁时自动释放使用 GetDC
检索的 DC。
创建 window、检索 DC 并销毁 window 的无限循环在第一次迭代后没有增加内存使用量。为了确保某些内部引用计数不会在不递减的情况下递增,我更改了循环以重复从同一个 window 获取 DC。这不仅增加了每次迭代的内存使用量,而且使我的整个系统变得缓慢和不稳定。