-
Bug
-
Resolution: Fixed
-
P4
-
1.1, 1.1.3
-
None
-
beta
-
generic, x86
-
generic
When the event queue is full, win32 hangs in several places. Such as in
src/win32/sun/windows/awt_Component/cpp:
HANDLE hevt = CreateEvent(NULL, TRUE, FALSE, NULL);
ASSERT(hevt);
::PostMessage(p->GetHWnd(), WM_AWT_QUEUE_SYNC, (WPARAM)hevt, 0);
WaitForSingleObject(hevt, INFINITE);
If the event queue is full the PostMessage will fail and WaitForSingleObject
will wait forever. One should verify the PostMessage and either retry or fail
more gracefully if it fails.
src/win32/sun/windows/awt_Component/cpp:
HANDLE hevt = CreateEvent(NULL, TRUE, FALSE, NULL);
ASSERT(hevt);
::PostMessage(p->GetHWnd(), WM_AWT_QUEUE_SYNC, (WPARAM)hevt, 0);
WaitForSingleObject(hevt, INFINITE);
If the event queue is full the PostMessage will fail and WaitForSingleObject
will wait forever. One should verify the PostMessage and either retry or fail
more gracefully if it fails.
- duplicates
-
JDK-4116819 Pontential VM lockup at dispose
-
- Closed
-