从WebApp启动和停止线程

时间:2010-07-12 10:14:08

标签: multithreading java-ee

我写信是为了以及如何做以下事情。

我有一个用于管理的WebApp,我应该在其中添加一个按钮(或类似的东西)来启动和停止Java线程(此线程在数据库上轮询,发送电子邮件等)。 目的是让用户能够管理这个线程的生命,决定是否让它保持一段时间,永远活着,停止等等......

逻辑是:

  1. 如果单击“开始”,则运行该线程,如果尚未运行实例;
  2. 如果点击“停止”,则停止。
  3. 正在运行的实例必须是唯一的,以便不同的用户(组管理员)不会启动多个线程。

    问题1.应该做什么?
    问题2.我不明白是否可以检索已经运行的线程的实例 问题3.是否可以为线程提供“名称”?

    我在谷歌搜索但没有找到任何东西,可能是因为我看起来很糟糕。

    非常感谢。

1 个答案:

答案 0 :(得分:0)

我无法回答的第一个问题,因为它听起来更像是一个陈述;)

第二个是:嗯,除非你放弃对线程实例的引用(即通过编写 new Thread()。start(); ),你将能够在该线程上调用方法在任何给定时间的实例。如果你放弃了引用(你不应该),那么你可以尝试在当前线程的ThreadGroup( Thread.currentThread()。getThreadGroup())中找到它。

第三个问题的答案:是的,你可以命名一个帖子。 线程namedThread =新线程(“myPetThread”);