我相信我已经研究了类似问题的答案,但没有找到我特定问题的答案。
我正在使用Java第三方提供的开源Text-To-Speech软件,当我取消和/或中断文本到语音消息时,TTS线程的子线程处于等待状态。使用JConsole,我可以找到每个等待线程的消息,例如:
堆栈跟踪: sun.misc.Unsafe.park(本机方法) java.util.concurrent.locks.LockSupport.park(未知源) java.util.concurrent.locks.AbstractQueuedSynchronizer $ ConditionObject.await(未知源) java.util.concurrent.ArrayBlockingQueue.put(未知来源)
在安全地级联所有其他子线程的停止时,有没有办法可以中断或取消线程?
我已经试验了ExecutorService,守护程序线程和同步逻辑。
如果您有任何建议,请告诉我。谢谢。