Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 19029|Antwort: 0

[Quelle] C# führt sichere Durchlaufoperationen in einer Multithread-Umgebung aus

[Link kopieren]
Veröffentlicht am 18.10.2016 13:55:48 | | |

Dieser Artikel verwendet List als Operationsobjekt
MSDN gibt offiziell die Sicherheitserklärung zum Thread List:
Diese Art von öffentlichem statischem Mitglied ist threadsicher. Allerdings kann kein Instanzmitglied garantiert threadsicher sein.
Solange die Sammlung nicht verändert wird, kann List mehrere Leser gleichzeitig unterstützen. Das Aufzählen durch eine Menge ist von Natur aus kein threadsicherer Prozess. Im seltenen Fall, dass eine Aufzählung mit einem oder mehreren Schreibzugriffen konkurriert, besteht die einzige Möglichkeit, Threads zu schützen, darin, die Sammlung für die gesamte Dauer der Aufzählung zu sperren. Damit mehrere Threads für Lese- und Schreiboperationen auf die Sammlung zugreifen können, müssen Sie Ihre eigene Synchronisation implementieren.
Wenn du nicht synchronisierst?
Wenn ein Thread eine Löschoperation und ein Thread eine Durchlaufoperation durchführt, wird während des Durchlaufprozesses die Sammlung verändert, was dazu führt, dass eine InvalidOperationException-Ausnahme erscheint, die bedeutet: Die Sammlung wurde verändert; Aufzählungsoperationen dürfen nicht durchgeführt werden.
Wie man synchronisiert, um die Sicherheit der Durchquerung sicherzustellen
Hier werden kritische Zonen und Mutexe verwendet, um den Threaddurchlauf zu sichern; der Beispielcode lautet wie folgt:






Vorhergehend:Lösung für den jssdk-Signaturfehler des offiziellen WeChat-Kontos unter China Unicom
Nächster:asp.net MVC globale Ausnahmehandhabung und Ausnahmeprotokolle
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com