java - 如何启动不阻塞Java主线程的后台线程?

标签 java multithreading concurrency blocking runnable

我有以下 Java 代码:

public static void main(String[] args)
{
    new Thread(new MyRunnable()).run();
    showGUI();
}

我的问题是启动 MyRunnable 会阻塞主线程,导致 showGUI 在完成运行之前不会被调用。我希望程序做的是生成 MyRunnable 并允许它在后台独立运行,使主线程忘记它并继续做它想要(比如调用 showGUI)。

最佳答案

run 在主线程上执行。 start 将创建一个新线程执行并在该线程上执行它的 run 方法。

关于java - 如何启动不阻塞Java主线程的后台线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10256891/

相关文章:

java - Math.random() 与 Random.nextInt(int)

java - 是否可以在 Eclipse 中链接条件断点和剪贴簿?

c# - 使用并行库添加到列表时保证线程安全的正确方法

java - 处理 100 万个文件大小在 kbs 到 100 GB 之间的文本文件

单击按钮时 JavaFX 在新线程上运行任务

asynchronous - Singleton EJB 异步方法 (LockType.Write) 阻塞直到方法处理,或者它会在将控制权返回给客户端后立即释放锁?

java - JPA 标准 API : order by the number of child entities in a one-to-many relationship

java - 最小化和最大化 java swing 时的帧大小问题

multithreading - 在valgrind下运行的程序中断时的线程堆栈回溯

c++ - pthread_cond_wait() 之前的检查标志