Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 守护进程线程实现_Java_Multithreading_Thread Safety - Fatal编程技术网

Java 守护进程线程实现

Java 守护进程线程实现,java,multithreading,thread-safety,Java,Multithreading,Thread Safety,我正在用java做一个项目。我已经实现了它的大部分。它有7个不同的类(在所有这些类中我都使用了线程),它们彼此关联。其中一个有main方法。所以我被要求在main类中使用deamon线程,以便它将初始化其他类上的所有其他线程 Question : How can i implement the daemon thread in the main class? main线程是为您创建的,您无法控制它是否是守护进程。这也没什么意义。但是您可以控制您创建的所有线程。简单使用方法: 对所有自定义线程执

我正在用java做一个项目。我已经实现了它的大部分。它有7个不同的类(在所有这些类中我都使用了线程),它们彼此关联。其中一个有main方法。所以我被要求在main类中使用deamon线程,以便它将初始化其他类上的所有其他线程

Question : How can i implement the daemon thread in the main class?

main
线程是为您创建的,您无法控制它是否是守护进程。这也没什么意义。但是您可以控制您创建的所有线程。简单使用方法:


对所有自定义线程执行相同的操作。确保您了解后果:一旦
main
线程完成(您退出
main()
方法),您的整个应用程序将终止。

main
线程是为您创建的,您无法控制它是否是守护进程。这也没什么意义。但是您可以控制您创建的所有线程。简单使用方法:


对所有自定义线程执行相同的操作。确保您了解后果:一旦
main
线程完成,使用此设置(退出
main()
方法)你的整个应用程序都将终止。

明白了。只有一个问题..我的主机上有一个通电和一个退出命令…因为在通电命令上我要初始化这个守护进程线程,这是否意味着在退出命令上我必须使用thread.setDaemon(false)?@Joni:does*quit*`命令你应该终止整个应用程序?然后从
main
返回,所有非守护进程线程将自动终止。@Tomasz Nurkiewicz:实际上,当main终止时,所有守护进程都将自动终止。如果有非守护进程线程仍在运行,主线程将无法退出。明白了。只有一个问题..我的主线程上有一个通电和一个退出命令…因为在通电命令上我将初始化此守护进程线程,这是否意味着在退出命令上我必须使用thread.setDaemon(false)?@Joni:dept*`命令你应该终止整个应用程序吗?然后从
main
返回,所有非守护进程线程将自动终止。@Tomasz Nurkiewicz:实际上,当main终止时,所有守护进程都将自动终止。如果有非守护进程线程仍在运行,则主线程无法退出。
Thread thread = new MyFancyThread();
thread.setDaemon(true);
thread.start();