怎样使main方法执行完和Tomcat一样继续运行
时间: 2024-03-08 13:47:33 浏览: 19
Tomcat是一个Web服务器,它在启动时会创建一个主线程来监听HTTP请求。当收到请求时,Tomcat会创建一个工作线程来处理请求并返回响应。在这种情况下,Tomcat的主线程是不会退出的,因为它需要一直监听HTTP请求。如果您需要实现类似的效果,可以使用类似Tomcat的方式来创建一个主线程和多个工作线程。
以下是一个示例代码,它创建了一个主线程和两个工作线程,主线程会等待工作线程执行完成后再退出程序:
```
public class Main {
public static void main(String[] args) {
// 创建工作线程并启动
Thread workerThread1 = new Thread(() -> {
System.out.println("Worker thread 1 is running...");
// 执行其他任务
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Worker thread 1 is finished.");
});
workerThread1.start();
Thread workerThread2 = new Thread(() -> {
System.out.println("Worker thread 2 is running...");
// 执行其他任务
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Worker thread 2 is finished.");
});
workerThread2.start();
// 主线程等待工作线程执行完成
try {
workerThread1.join();
workerThread2.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
// 主线程执行完成后不退出程序
System.out.println("Main thread is finished but program is still running.");
}
}
```
在这个程序中,我们创建了两个工作线程并启动它们。工作线程会执行其他任务,并在执行完成后打印一条消息。我们在主线程中等待工作线程执行完成,然后打印一条消息并不退出程序,从而实现和Tomcat一样继续运行的效果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)