直接上代码,先看一段很简单的创建线程的代码:
Thread threadB = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("BBB"); }
});
threadB.start();
执行结果没问题
(1)假设有个业务场景,线程任务必须在满足某个条件才执行,而不是start的时候执行,怎么做?
这个时候理所当然就想着先把当前线程挂起,满足条件时候再唤醒。经过改造,写出如下代码:
1-1:Park方式:
Thread threadB = new Thread(new Runnable() {
@Override
public void run() {
LockSupport.park();
System.out.println("BBB");
}