描述
这个java.lang.Thread.holdsLock() 当且仅当当前线程持有指定对象的监视器锁时,方法才返回 true。
声明
以下是声明java.lang.Thread.holdsLock()方法
public static boolean holdsLock(Object obj)
参数
obj- 这是测试锁所有权的对象。
返回值
如果当前线程持有指定对象的监视器锁,则此方法返回 true。
异常
NullPointerException- 如果 obj 为空。
示例
下面的例子展示了 java.lang.Thread.holdsLock() 方法的用法。
package com.tutorialspoint;
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
相关用法
- Java Java.lang.Thread.run()用法及代码示例
- Java Java.lang.Thread.isDaemon()用法及代码示例
- Java Java.lang.Thread.checkAccess()用法及代码示例
- Java Java.lang.Thread.getState()用法及代码示例
- Java Java.lang.Thread.yield()用法及代码示例
- Java Java.lang.Thread.isInterrupted()用法及代码示例
- Java Java.lang.Thread.getName()用法及代码示例
- Java Java.lang.Thread.enumerate()用法及代码示例
- Java Java.lang.Thread.getPriority()用法及代码示例
- Java Java.lang.Thread.dumpStack()用法及代码示例
- Java Java.lang.Thread.setUncaughtExceptionHandler()用法及代码示例
- Java Java.lang.Thread.currentThread()用法及代码示例
- Java Java.lang.Thread.getAllStackTraces()用法及代码示例
- Java Java.lang.Thread.setContextClassLoader()用法及代码示例
- Java Java.lang.Thread.setDaemon()用法及代码示例
- Java Java.lang.Thread.getThreadGroup()用法及代码示例
- Java Java.lang.Thread.start()用法及代码示例
- Java Java.lang.Thread.setName()用法及代码示例
- Java Java.lang.Thread.toString()用法及代码示例
- Java Java.lang.Thread.activeCount()用法及代码示例
注:本文由纯净天空筛选整理自 Java.lang.Thread.holdsLock() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。