-
Bug
-
Resolution: Duplicate
-
P2
-
None
-
1.1.4, 1.1.6
-
x86
-
windows_nt
Name: chT40241 Date: 02/03/98
Deadly embrace between main app thread and AWT EventQueue thread.
Both threads have called Container.getPreferredSize. The main
thread is waiting on "this", held by the EventQueue, while the
EventQueue thread is waiting on target.getTreeLock, which is held
by the App thread. The problem occurs frequently, but not
consistently.
This did not occur with 1.1.5 but has started with 1.1.6. We see in the putback comments the following (08Dec97):
Modified synchronization to use getTreeLock vice direct access to Component.LOCK. Added sync by getTreeLock to all add and remove functions in the standard components. Also removed synchronization from some methods that also used getTreeLock to avoid potential deadlocks.
update: src/share/java/java/awt/BorderLayout.java
update: src/share/java/java/awt/Button.java
update: src/share/java/java/awt/Frame.java
update: src/share/java/java/awt/Label.java
update: src/share/java/java/awt/List.java
update: src/share/java/java/awt/Checkbox.java
update: src/share/java/java/awt/CardLayout.java
update: src/share/java/java/awt/Menu.java
update: src/share/java/java/awt/MenuItem.java
update: src/share/java/java/awt/Scrollbar.java
update: src/share/java/java/awt/TextArea.java
update: src/share/java/java/awt/TextField.java
update: src/share/java/java/awt/Canvas.java
update: src/share/java/java/awt/Choice.java
update: src/share/java/java/awt/Window.java
update: src/share/java/java/awt/Panel.java
update: src/share/java/java/awt/FlowLayout.java
update: src/share/java/java/awt/MenuBar.java
update: src/share/java/java/awt/FileDialog.java
update: src/share/java/java/awt/GridLayout.java
update: src/share/java/java/awt/MenuComponent.java
update: src/share/java/java/awt/Dialog.java
update: src/share/java/java/awt/CheckboxMenuItem.java
update: src/share/java/java/awt/TextComponent.java
update: src/share/java/java/awt/GridBagLayout.java
update: src/share/java/java/awt/ScrollPane.java
update: src/share/java/java/awt/PopupMenu.java
update: src/share/sun/sun/awt/VariableGridLayout.java
update: src/share/sun/sun/awt/VerticalBagLayout.java
update: src/share/sun/sun/awt/HorizBagLayout.java
update: src/share/sun/sun/awt/SunToolkit.java
update: src/win32/sun/windows/awt_Graphics.cpp
update: src/win32/sun/windows/awt_MenuItem.cpp
update: src/win32/sun/windows/awt_Dialog.cpp
update: src/win32/sun/windows/awt_Component.cpp
Corrected overly ambitious synchronization block that caused modal dialogs to deadlock.
reduced coverage of a sync to exclude potential upcall to user paint code.
======================================================================
- duplicates
-
JDK-4107790 Application freezes with incompletly created frame (Motif)
-
- Closed
-