<分区>
我创建了一个在源文件夹中搜索文件的程序。如果找到任何文件,它会处理该文件并将其移动到目标文件夹,然后在源文件夹中查找新文件。它必须继续检查文件的源文件夹。
我已经使用线程在源文件夹中查找文件。我面临的问题是,只要在文件处理过程中抛出任何异常,线程就会停止。即使抛出异常,我也希望线程继续运行。它必须将导致错误的文件移动到其他文件夹,并在源文件夹中查找新文件。如何让线程继续运行?
例如:
public void run() {
try {
searchfile();
}
catch(Exception e) {
e.printStackTrace();
}
}
public void searchfile(){
...
}
更新:
我的问题应该更清楚。实际上有 4 个源文件夹和 4 个目标文件夹。我必须在每个源和目标对中执行相同的操作。所以我在一个类中创建了 4 个线程,并在单独的类中执行操作。
class MainClass
{
public static void main(String[] args){
for(int i=0;i<4;i++){
SearchClass search = new SearchClass();
Thread thread = new Thread(search);
thread.start();
}
}
}
class SearchClass
{
public void run() {
try {
searchfile();
} catch(Exception e) {
e.printStackTrace();
}
}
public void searchfile(){ ... } }
所有线程都不会停止运行,即使它在中间捕获了任何异常。我该怎么做?