繁体   English   中英

重新部署JBoss 6.1.0之后仍然存在线程

[英]Persisting thread after redeploy JBoss 6.1.0

我正在将带有jar的EAR部署在耳朵的lib文件夹中。 这个jar产生一个DefaultFileMonitor线程(来自Apache Commons api)并监视一个文件。

当我使用twiddle进行EAR的重新部署时,为所有WAR调用的取消部署似乎并没有杀死DefaultFileMonitor线程。

问题是,将使同一文件上的多个DefaultFileMonitor保持打开状态,并导致出现问题。

杀死该线程的正确方法是什么? 难怪在这里怪吗?

public enum Logger {
    INSTANCE;
    DefaultFileMonitor fm = new DefaultFileMonitor(new CustomFileListener());
    private FileObject file = null;
    private FileObject object = null;

    private Logger() {

    this.openFile();

    try {
        FileSystemManager fsManager = VFS.getManager();
        file = fsManager.resolveFile(this.getfileLocation());
        object = fsManager.resolveFile("c:\test.txt");
    } catch (FileSystemException e) {
        e.printStackTrace();
    }

    fm.setDelay(1000);
    fm.addFile(file);
    fm.start();
}

这是我用来加载DefaultFileMonitor的代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM