首页 > 数据库技术 > 详细

FindBugs NN_NAKED_NOTIFY

时间:2015-07-27 21:05:47      阅读:609      评论:0      收藏:0      [点我收藏+]

工作中遇到的,NN_NAKED_NOTIFY,可能原因是你你锁的是同一个变量,但是FindBugs不能识别成是同一个变量,即使两个变量指向同一个地址,findbugs也为认为你是两个不一样的变量,举个例子吧

Object a = new Object();
Object b = a;

synchronized(a)
{
    a.notifyAll();
}

synchronized(b)
{
    b.wait();
}

这种情况虽然运行时不会报错,但是findbugs会报错

所以还是锁同一个,调用同一个对象的notifyAll()和wait()

Object a = new Object();
Object b = a;

synchronized(a)
{
    a.notifyAll();
}

synchronized(a)
{
    a.wait();
}

这样就不报FindBugs错误了

版权声明:本文为博主原创文章,未经博主允许不得转载。

FindBugs NN_NAKED_NOTIFY

原文:http://blog.csdn.net/csm_qz/article/details/47089569

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!