开发者

NetBeans IDE deadlock

开发者 https://www.devze.com 2023-02-27 04:32 出处:网络
I\'ve already gone to the NetBeans bug reporting community, before anyone points me there. They have no solution.

I've already gone to the NetBeans bug reporting community, before anyone points me there. They have no solution.

In every NetBeans IDE I use (I have 4 versions (6.9, 6.9.1, 7.0, and the latest experimental build) on multiple computers), they consistently and predictably go into deadlock whenever I open the GUI builder for a class (JFrame, JDialog, and Panel), unless it is the first time that class' GUI builder has been opened. Has anyone else encountered this problem? If so, have you found a way to fix it?

Reason


I discovered the reason, but still have no solution: There is a new thread started within my library's class BHFrame's initComponents() method, which extends JFrame and uses the NetBeans GUI Builder. NetBeans tries to 开发者_StackOverflow中文版run this method when trying to build the GUI in the builder, and locks up in an infinite loop of waiting. NetBeans reports this during Thread Dumping:

Found one Java-level deadlock:
=============================
"BHFrame.initComponents():  Setting up custColorsEditDialog":
  waiting to lock monitor 0x089178d4 (object 0x1ae148f8, a
javax.swing.MultiUIDefaults),
  which is held by "AWT-EventQueue-1"
"AWT-EventQueue-1":
  waiting to lock monitor 0x0868f6ec (object 0x1a310f18, a
java.awt.Component$AWTTreeLock),
  which is held by "BHFrame.initComponents():  Setting up custColorsEditDialog"


I deleted the new thread spawned in the initComponents() method, and after a while, everything is back to normal.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号