2016-09-26 25 views
5

Metin dosyasındaki tüm satırları okumayı ve her satır bilgisini görüntülemeyi planlıyorum. İçteki her öğe için dizini nasıl bulabilirim? Size endeksi verir Parallel.ForEach başka aşırı yük vardırC# paralel foreach döngü bulma dizini

string[] lines = File.ReadAllLines("MyFile.txt"); 
    List<string> list_lines = new List<string>(lines); 
    Parallel.ForEach(list_lines, (line, index) => 
     { 
     Console.WriteLine(index); 
    // Console.WriteLine(list_lines[index]); 
     Console.WriteLine(list_lines[0]); 
     }); 
     Console.ReadLine(); 
+1

Sizin 'index'te neyin var? –

+0

Burada indis hata ayıklandığında doğru veya yanlış gösteriyor. – Kurkula

+2

Ahh, çünkü Curtis'in dediği gibi, 'index' ikinci değil, geri arama için üçüncü parametredir. –

cevap

7

. Bkz. https://msdn.microsoft.com/en-us/library/dd783359(v=vs.110).aspx

Parallel.ForEach(list_lines, (line, state, index) => 
    { 
     Console.WriteLine(index); 
     Console.WriteLine(list_lines[index]); 
    }); 
+0

List_lines [index] 'yerine, geri arama argümanını kullanmak daha iyi olmaz mıydı (' line')? –

+0

Kesinlikle, bu satırın sözdizimsel ve semantik olarak geçerli olduğunu gösteren bir örnektir ('index' doğru türdedir ve geçerli satırın dizinini semantik olarak gösterir). –