运行 Java 背景中一段代码的任何好方法

Any Good approach to Run a piece of code in Background in Java

我想在 java 中 运行 一段后台代码,但不想使用线程概念。请参考一些更好的方法。 条件是我不希望此代码损害我的 运行ning 代码。

如果您真的绝对不想使用线程,您可以使用 Runtime#exec 生成一个新进程 - 使用执行的正确 class 路径执行一个新的 Java 进程一个给你的程序。不过这个分量真的很重。

如果您可以创建线程(如果使用得当,它们的占用空间非常小),但不想直接使用 Thread class,您可以使用 Executor,例如像这样:

Executor executor = Executors.newFixedThreadPool(POOL_SIZE);
executor.execute(myBackgroundTask);

如果你有一个大问题想要并行化,你也可以使用 Fork Join Framework

实际上是一个好主意 而不是 直接使用 Thread class - 使用 Executor 或 Fork/Join。但是:如果您想 运行 在后台进行某些操作,您将最终使用一个线程或一个新进程(在后台)。