1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > java 动态增加线程 java - 在Java中动态停止线程 - SO中文参考 - www.soinside.com

java 动态增加线程 java - 在Java中动态停止线程 - SO中文参考 - www.soinside.com

时间:2023-11-05 21:44:24

相关推荐

java 动态增加线程 java - 在Java中动态停止线程 - SO中文参考 - www.soinside.com

我需要一些有关线程的帮助,我需要制作一个可以动态关闭和打开线程的程序(这意味着当我需要一个线程时,它将运行,如果不再需要它,它将停止),现在我的问题是?如果我仅终止该线程的run方法,将其计为线程停止或完全关闭线程的计数,则为k。public void run() {

while(!tasks.isEmpty()) {

try {

if(tasks.peek() != null) {

Thread.sleep(1000);

waitingPeriod.getAndAdd(-1);

tasks.peek().setProcessingTime(tasks.peek().getProcessingTime() - 1);

if(tasks.peek().getProcessingTime() == 0) {

// System.out.println("Removed task " + tasks.peek().getId() + " from queue" );

tasks.remove();

Thread.currentThread().interrupt();

continue;

}

}

}

catch(InterruptedException e) {

}

//take next task from queue

//stop the thread for a time equal with the task's processing time

//decrement the waitingPeriod

}

}

此线程在队列上工作,如果其中有元素,我将从另一个类启动它,并且我希望仅当我有元素时才运行此线程,因此当队列为空时,我希望线程停止。我如何停止线程,足以终止那段时间的运行功能?

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。