锁的可重入性 指什么?具体点 如题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果当前线程已经获得了某个监视器对象所持有的锁,那么该线程在该方法中调用另外一个同步方法也同样持有该锁。比如:public sychrnozied void test() { xxxxxx; test2();}public sychronized void test2() { yyyyy;}在上面代码段中,执行 test 方法需要获得当前对象作为监视器的对象锁,但方法中又调用了 test2 的同步方法。如果锁是具有可重入性的话,那么该线程在调用 test2 时并不需要再次获得当前对象的锁,可以直接进入 test2 方法进行操作。如果锁是不具有可重入性的话,那么该线程在调用 test2 前会等待当前对象锁的释放,实际上该对象锁已被当前线程所持有,不可能再次获得。如果锁是不具有可重入性特点的话,那么线程在调用同步方法、含有锁的方法时就会产生死锁。 上面代码段中的 sychronized 应改为 synchronized jsp\java 使用swing时如何确定JCheckBox的选中情况? 郁闷,解析xml 怎样导出生成.jar文件,高手帮帮忙。。。谢。。。 关于流的一个问题 帮忙推荐一本java图像处理的书啊!!50分! 有现成的函数么?显示金额的 有关Enum枚举问题 如何把一个本地文件读到一个byte[]数组里面去? 用Java 的socket实现客户端的功能 菜鸟又来求教了··· java中File类list()方法的一些问题
xxxxxx;
test2();
}public sychronized void test2() {
yyyyy;
}在上面代码段中,执行 test 方法需要获得当前对象作为监视器的对象锁,但方法中又调用了 test2 的同步方法。如果锁是具有可重入性的话,那么该线程在调用 test2 时并不需要再次获得当前对象的锁,可以直接进入 test2 方法进行操作。如果锁是不具有可重入性的话,那么该线程在调用 test2 前会等待当前对象锁的释放,实际上该对象锁已被当前线程所持有,不可能再次获得。如果锁是不具有可重入性特点的话,那么线程在调用同步方法、含有锁的方法时就会产生死锁。