它是关于一个应该处理(VAD,响度,剪辑)大量声音文件(例如100k)的应用程序。此时,我创建了尽可能多的工作线程(可调用线程),然后使用threadPool.invokeAll()运行所有线程,将结果写入文件系统,卸载已处理的文件,然后继续步骤1。由于它是一个带有图形用户界面的应用程序,我不想让用户在处理所有声音文件时感觉应用程序“没有响应”。(此时它确实会导致invokeAll被阻塞)。我不确定什么是解决这个问题的“好”方法。它应该不可能为用户做其他事情,同时处理,但我想显示一个进度条,如"10 of 100000声音文件已完成“。那么我怎么去那里呢?我是否必须创建一个“监视器线程