Ich debattierte mit einem Freund, der besagt, dass der statische Konstruktor einer Race-Bedingung weichen konnte, da der statische Konstruktor mehrmals aufgerufen werden konnte. Es scheint, dass dies nur in Multi-Threaded-Umgebungen mit hohem Volumen passieren kann. Ist das überhaupt möglich?Race-Bedingung in C# statischen Konstruktor
Ich konnte keine Dokumentation finden, die ihm den Fehler beweisen. Hat jemand dazu einen Einblick?
Danke!
Die Bedingung Rennen kommt, wenn ein neuer Thread etwas tut, das den statischen Konstruktor, während der statische Konstruktor auf einem anderen Thread bereits läuft auslösen würde. Der Thread wird blockiert, bis der statische Konstruktor fertig ist. Der statische Konstruktor wartet jedoch möglicherweise auf den Abschluss dieses neuen Threads. Siehe http://stackoverflow.com/a/8883117/385844 – phoog