我在这样的线程中运行一些网络摄像头捕获:
class Capture implements Runnable {
@Override
public void run() {
while(true){
//capture images
//sleep 5 seconds
}
}
//To actually start the capture
new Capture().run();
我经常这样做,所以我希望仍然可以执行UI功能,例如在此过程中单击按钮,但事实并非如此。我的JFrame上的x按钮没有响应,与其他UI组件相同。
除了使用单独的线程之外,我还需要做些什么吗?似乎不适合我。感谢
答案 0 :(得分:2)
答案 1 :(得分:1)
这种情况正在发生,因为您正在调用run方法,但是在执行new Capture().run();
时甚至没有创建Thread的实例时,不会启动Thread
除了使用单独的线程之外,我还需要做些什么吗?
是的,创建并启动线程而不是
new Thread(new Capture()).start();