En parallèle.ForEach questions en Lecture et en Écriture Sur Un Fichier, le Fichier Est En cours d'Utilisation d'Erreur

Je suis vraiment confus au sujet de Parallèle.ForEach... Comment ça fonctionne?
Le code ci-dessous a une erreur -> File Is In Use

Parallel.ForEach(list_lines_acc, (line_acc, list_lines_acc_state) =>
{
     FileStream file = 
         new FileStream(GPLfilePath, FileMode.Open, FileAccess.ReadWrite);
     StreamReader reader = new StreamReader(file);
     var processed = string.Empty;
     Ok_ip_port = string.Empty;
     while (reader.EndOfStream)
     {
         if (string.IsNullOrEmpty(Ok_ip_port))
         {
             Ok_ip_port = reader.ReadLine();
         }
         else
         {
             string currentLine = reader.ReadLine();
             processed += currentLine + Environment.NewLine;
         }
     }
     StreamWriter writer = new StreamWriter(file);
     writer.Write(processed);

     reader.Close();
     writer.Close();
     file.Close();
});  

Vous s'il vous plaît me montrer comment puis-je résoudre ce problème? Ce code est juste un exemple.

Je veux travailler avec les tableaux de chaîne & les Listes Parallèles.ForEach, mais il y a toujours un problème pour l'ajout ou la modification de ces collections. Pouvez-vous nous donner un exemple? Je suis à l'aide de Visual Studio 2010 + .NET Framework 4.0

peut-être parce que de votre FileAccess mode.Êtes-vous essayer de modifier le fichier que vous avez ouvert pour la lecture.
une double question: stackoverflow.com/questions/9913251/...
Vous voulez plusieurs threads à écrire dans le même fichier?
avec un numéro de série car il n'y a pas d'erreur sur ce que les codes. alors que le problème est parallèle pour...
Vous code n'a aucun sens. Pourquoi à l'aide de l'aide de Parallel.ForEach sur list_lines_acc si vous n'utilisez pas les éléments de l'énumération vous itération, ni à l'aide de la ParallelLoopState paramètre?

OriginalL'auteur SilverLight | 2012-09-24