我有一个单线程的目录扫描程序.扫描文件时,我必须读取属性信息并将其插入数据库.
我有两个问题.为了提高性能:
以下是代码清单:
void scan() {
File file = new File("/mnt/sdcard");
fun(file);
}
void fun(File file) {
if (!file.exists()) {
return;
}
if (!file.isDirectory()) {
// read attribute information and insert to db
return;
} else {
File[] arr = file.listFiles();
for (int i = 0; i < arr.length; i++) {
fun(arr[i]);
}
}
}
Run Code Online (Sandbox Code Playgroud)