Tag: 静态初始化器

如果在静态初始化程序块中创建了线程,程序将挂起

我遇到过我的程序挂起的情况,看起来像死锁。 但我试着用jconsole和visualvm搞清楚,但他们没有发现任何死锁。 示例代码: public class StaticInitializer { private static int state = 10; static { Thread t1 = new Thread(new Runnable() { @Override public void run() { state = 11; System.out.println(“Exit Thread”); } }); t1.start(); try { t1.join(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(“exiting static block”); } public […]