【发布时间】:2014-02-11 10:38:32
【问题描述】:
在经过一定时间后尝试立即停止线程时遇到问题,因为 thread.stop 和类似的其他线程已被贬值。
我试图停止的线程正在使用我的鼠标,我需要停止它,以便我可以以其他方式使用我的鼠标。
我在想的是下面的代码,这只是为了让另一个线程来观察主线程运行了多长时间,如果它还活着,就停止它,但我不能完成这个。
public void threadRun(int a) {
Thread mainThread = new Thread(new Runnable() {
@Override
public void run() {
// does things with mouse which may need to be ended while they
// are in action
}
});
Thread watchThread = new Thread(new Runnable() {
@Override
public void run() {
if (timeFromMark(mark) > a) {
if (mainThread.isAlive()) {
// How can I stop the mainThread?
}
}
}
});
}
【问题讨论】:
-
mainThread可以自行监视并在给定时间后退出吗?
标签: java multithreading