Thread.sleep() 的疑问

2019-02-14 11:53发布

问题:

class Run implements Runnable{
@Override
public void run() {
try {
System.out.println(Thread.currentThread().getName() + " begin...");
Thread.sleep(1000*20);
System.out.println(Thread.currentThread().getName() + " over...");
} catch (InterruptedException e) {
e.printStackTrace();
}
}

}
public class TestThread {
public static void main(String[] args) {
Run run = new Run();
new Thread(run).start();
new Thread(run).start();
}
}
请问这段代码中 Thread.sleep(1000*20); //线程握住的锁是谁? 是run这个对象?还是谁?

回答1:

你的线程类里并没有加锁,所有现在还没有锁的概念



回答2:

线程握住的锁是谁?
sleep 有锁吗?



标签: java 线程