gpt4 book ai didi

java - 如何在 servlet 中运行不同的线程?

转载 作者:行者123 更新时间:2023-11-29 09:48:41 24 4
gpt4 key购买 nike

如何运行与 servlet 不同的线程?我在 servlet 的 init() 方法中有以下代码。

FileThread myThread = new FileThread();
myThread.start();
myThread.run();

FileThread 应该查看某个文件夹以检查文件是否已更改。所以这个线程是循环运行的。但它没有像我预期的那样工作。它卡住(服务器不返回 HTML)服务器的服务。

我希望这个线程在后台运行并且不干扰 servlet 的进程。我怎样才能做到这一点?

最佳答案

您通常不会在 Thread 上调用 .run(),因为它会使 run() 方法在当前线程,而不是新线程!你说那里有一个无限循环,因此 servlet 永远不会完成初始化,因此它不会处理任何请求!

您只需在Thread 对象上调用.start()。此方法将使 JVM 启动一个新的执行线程,该线程将运行该 Thread 对象的 run() 方法中的代码。

关于java - 如何在 servlet 中运行不同的线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17287686/

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