gpt4 book ai didi

java - 使用 sleep 能否保证线程的执行顺序?

转载 作者:行者123 更新时间:2023-12-01 16:52:16 26 4
gpt4 key购买 nike

下面的代码片段是否保证 t1、T2 和 T3 将按顺序开始执行?

public class ThreadExecDemo {
public static void main(String[] args) throws InterruptedException {
Thread t1 = new Thread(new ThreadDemo(),"t1");
Thread t2 = new Thread(new ThreadDemo(),"t2");
Thread t3 = new Thread(new ThreadDemo(),"t3");
t1.start();
Thread.sleep(5);
t2.start();
Thread.sleep(5);
t3.start();
}
}

class ThreadDemo implements Runnable {
@Override
public void run() {
System.out.println(Thread.currentThread().getName()+" is running ");
}
}

最佳答案

简短回答:否。

更长的答案:不。您无法通过 sleep 来可靠地影响线程的调度(您为什么要这样做?)。当您启动一个线程时,它与任何其他线程(包括主线程)异步运行,并且您无法控制它的调度时间。你也不应该关心。

关于java - 使用 sleep 能否保证线程的执行顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37734909/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com