您的位置:首页 > 编程语言 > Java开发

java 查看同步方法外有多少线程在等待

2012-01-09 16:27 253 查看
ThreadMXBean bean = java.lang.management.ManagementFactory.getThreadMXBean();
ThreadInfo[] infos = bean.getThreadInfo(bean.getAllThreadIds());
int count = 0;
for(ThreadInfo info:infos){
if(info.getLockOwnerId() == Thread.currentThread().getId()){
count++;
}
}
System.out.println("阻塞线程(等待发送线程)数量:"+count);


执行一个同步方法,想知道这个方法外面是否还有线程在等待该对象的锁,在同步方法内做个统计.应该还有更优雅或者简单或者快捷的方法吧.先记录在这里,找到后再更新.这个方法消耗应该不低
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: