我正在使用ServletContextListener来创建一个新线程。
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import java.util.concurrent.*;
public class Port implements ServletContextListener {
private ExecutorService executor;
public void contextDestroyed(ServletContextEvent event) {
executor.shutdown();
}
public void contextInitialized(ServletContextEvent event) {
// start task
executor = Executors.newSingleThreadExecutor();
executor.submit(new Task()); //task should implement Runnable!
}
}
我正在一个线程中从串口读取数据(SerialPortEventListener)。task.class 应在服务器活动期间一直从串口读取信息。我将其放入线程中,因为只能有一个实例从串口读取;然后应该将数据共享给所有客户端。
现在我想访问此线程正在从串口读取的数据。
这可以吗?如果可以,那么如何操作?