我有一個函數內以下循環:字符串數組處置在一個循環中
for(int i = 0; i < 46;i++){
String[] arrStr = File.ReadAllLines(path+"File_"+i+".txt")
List<String> output = new List<String>();
for(j = 0;j< arrStr.Length;j++){
//Do Something
output.Add(someString);
}
File.WriteAllLines(path+"output_File_"+i+".txt",output.toArray());
output.Clear();
}
每個txt文件大約有20K貨。函數打開他們的46,我需要運行的功能超過1K次,所以我打算離開程序在一夜之間運行,到目前爲止我沒有發現任何錯誤,但由於在循環的每次交互中引用了一個20k大小的字符串數組,因此恐怕可能存在垃圾問題內存被累積起來或者在過去的交互中來自陣列。如果存在這樣的風險,在這種情況下哪種方法最好處置舊陣列? 另外,同時運行3個這樣的程序是否安全?
您可以使用'列表輸出=新列表(arrStr.Length);'來優化這一點。但沒有問題。每次運行3次可能會比順序運行慢。 –