java.lang.Thread.holdsLock()%uA0当且仅当当前线程在指定的对象上保持监视器锁方法返回true。
声明
以下是java.lang.Thread.holdsLock()方法的声明
public static boolean holdsLock(Object obj)
参数
-
obj%uA0-- 这是用于测试锁定拥有的对象。
返回值
如果当前线程在指定的对象上保持监视器锁此方法返回true。
异常
-
NullPointerException%uA0-- 如果obj 为%uA0null.
例子
下面的例子显示java.lang.Thread.holdsLock()方法的使用。
package com.yiibai import java.lang.* public class ThreadDemo implements Runnable { Thread th public ThreadDemo() { th = new Thread(this) // this will call run() function th.start() } public void run() { /* returns true if and only if the current thread holds the monitor lock on the specified object */ System.out.println("Holds Lock = " + Thread.holdsLock(this)) synchronized (this) { System.out.println("Holds Lock = " + Thread.holdsLock(this)) } } public static void main(String[] args) { new ThreadDemo() } }
让我们来编译和运行上面的程序,这将产生以下结果:
Holds Lock = false Holds Lock = TRUE