`
m635674608
  • 浏览: 4951733 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

java clinit 死锁

 
阅读更多
public class StaticInit {
	public static void main(String[] arg) {
		Thread th1 = new Thread(new Runnable() {
			public void run() {
				System.out.println(B.bStr);
			}
		}, "call-bStr");

		Thread th2 = new Thread(new Runnable() {
			public void run() {
				System.out.println(C.cStr);
			}
		}, "call-cStr");
		th1.start();
		th2.start();
	}
}

class B {
	static {
		try {
			System.out.println("Binit start");
			Thread.sleep(1000);
		} catch (InterruptedException ex) {
		}
		System.out.println("b->cStr " + C.cStr);
	}
	static String bStr = "bStr";
}

class C {
	static {
		try {
			System.out.println("Cinit start");
			Thread.sleep(1000);
		} catch (InterruptedException ex) {
		}
		System.out.println("c->b.bStr " + B.bStr);
	}
	static String cStr = "cStr";
}

 

"call-cStr" prio=6 tid=0x0257cc00 nid=0x18a4 in Object.wait() [0x04c3f000]
   java.lang.Thread.State: RUNNABLE
    at C.<clinit>(StaticInit.java:40)
    at StaticInit$2.run(StaticInit.java:13)
    at java.lang.Thread.run(Thread.java:662)

"call-bStr" prio=6 tid=0x0257a400 nid=0x1ddc in Object.wait() [0x04baf000]
   java.lang.Thread.State: RUNNABLE
    at B.<clinit>(StaticInit.java:28)
    at StaticInit$1.run(StaticInit.java:7)
    at java.lang.Thread.run(Thread.java:662)

 

分享到:
评论

相关推荐

    apple越狱备份数据

    at com.semaphore.jna.md.MDLibrary.&lt;clinit&gt;(MDLibrary.java:39) at com.semaphore.jna.idevice.win.WinDeviceLibrary.addNotificationHandler(WinDeviceLibrary.java:61) at ...

    详谈jvm--Java中init和clinit的区别

    下面小编就为大家带来一篇详谈jvm--Java中init和clinit的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Java验证码Cage.zip

    Cage 是一个 Java 实现的验证码图片生成库,快速、小型和简单。 示例代码: public class QuickStart {  public static void main(String[] args) throws IOException {  Cage cage = new GCage()...

    java-client:用于编写Appium测试的Java语言绑定,符合Mobile JSON Wire&W3C Webdriver Protocol

    Java客户端 这是用于编写Appium测试的Java语言绑定,符合 功能和其他有趣的信息 如何安装最新的Java客户端Beta /快照 Java客户端项目甚至可以在正式发布到Maven Central之前使用。 请参考 Maven 将以下内容添加到...

    JDBCPool.java

    JDBC连接池 原子性:最小的单元,如果一个是失败了,则一切的操作将全部失败。 一致性:如果事务出现错误,则回到最原始的状态 隔离性:多个事务之间无法访问,只有当事务完成后才可以看到结果 ...

    android 使用poi读取高版本excel

    at org.apache.poi.openxml4j.opc.internal.marshallers.PackagePropertiesMarshaller.&lt;clinit&gt;(PackagePropertiesMarshaller.java:41) at org.apache.poi.openxml4j.opc.OPCPackage.init(OPCPackage.java:161) ...

    NetUtils.java

    网络工具类

    Hadoop2.6.0_win64_dll_winutils.exe

    at org.apache.hadoop.util.Shell.&lt;clinit&gt;(Shell.java:386) at org.apache.hadoop.util.StringUtils.&lt;clinit&gt;(StringUtils.java:79) at org.apache.hadoop.security.Groups.parseStaticMapping(Groups.java:116)

    hadoop2.6(hadoop.dll和winutils.exe)

    本人使用sts3.5、hadoop2.6.0连linux下的伪分布式环境 已测试通过 1、解压后winutils.exe放C:\Windows\System32目录下 另两个文件放windows开发机上hadoop2.6.0的bin目录下

    window 本地执行 hadoop 缺失的hadoop.dll 和 winutils.exe 文件

    at org.apache.hadoop.util.Shell.&lt;clinit&gt;(Shell.java:516) Exception in thread "main" java.lang.UnsatisfiedLinkError:''boolean org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(java.lang.String...

    Spring Boot 集成 MinIO(分布式对象存储系统)

    内容概要:首先带着读者安装MinIO,并帮助读者通过 Spring Boot 框架一步步完成 MinIO 集成,快速上手分布式对象存储系统。在手写MinIO 工具类的过程中会摘取整体框架中的核心逻辑,简化代码实现过程,保留核心功能...

    jacob.jar1.19及使用方法

    at com.jacob.com.JacobObject.&lt;clinit&gt;(JacobObject.java:107) at MsWordEdit.(MsWordEdit.java:25) at MsWordEdit.main(MsWordEdit.java:642) 如果不清楚java.library.path,输出一下即可。代码如下 System...

    JVMTI输出日志例子

    INCLUDES="-I$JAVA_HOME/include -I$JAVA_HOME/include/linux" gcc $BASE_HOME/tracer.c -fpic $INCLUDES -shared -o $BASE_HOME/tracer.so 3、在jboss启动脚本的java参数中加入 -agentpath:/home/java/jvmti/...

    java俄罗斯方块源码-TetrisDemo:俄罗斯方块演示

    java俄罗斯方块源码 高软大作业:俄罗斯方块游戏的Java实现, 源文件在压缩包中的src文件夹中;使用MVC模式编写; 如果不能直接运行,请重新编译源代码;

    开源项目-vasilmkd-semaphore.zip

    开源项目-vasilmkd-semaphore.zip,A lockless semaphore package using atomic instructions, feedback appreciated

    clinit-cfn-tool:Cloudinit 从 AWS CloudFormation 注入提取物

    clinit-cfn-工具Cloudinit 注入/提取到/从 AWS CloudFormation。 创建此工具的动机是使用与 CloudInit 用户数据文件集成的 CloudFormation 的非常烦人/困难的工作方式。 AWS CloudFormation 使用 JSON 格式,而 ...

    ReLinker:适用于Android的强大本机库加载器

    重新链接器 强大的Android本机库加载...at com.your.app.NativeClass.&lt;clinit&gt;(Native.java:16) ... 63 more Caused by: java.lang.UnsatisfiedLinkError: Library stlport_shared not found at java.lang.Runtime.lo

    hadoop-3.0.0 win工具包 hadoop.dll winutils.exe

    util.Shell (Shell.java:&lt;clinit&gt;(694)) - Did not find winutils.exe: {} java.io.FileNotFoundException: Could not locate Hadoop executable: E:\hadoop-3.0.2\bin\winutils.exe -see ...

    hadoop-2.6.0 win工具包 hadoop.dll winutils.exe

    util.Shell (Shell.java:&lt;clinit&gt;(694)) - Did not find winutils.exe: {} java.io.FileNotFoundException: Could not locate Hadoop executable: E:\hadoop-3.0.2\bin\winutils.exe -see ...

    Hadoop 启动WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using

    搭建hadoop 环境时遇到启动异常告警问题 “WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable” 上来不多说,百度收集些相关...

Global site tag (gtag.js) - Google Analytics