Können Sie auf einem allgemeinen Wörterbuch sperren?
-
03-07-2019 - |
Frage
Oder sollten Sie immer eine andere Sperrobjekt erstellen?
Lösung
Ja, wirft es auf einen IDictionary und Sperre für .SyncRoot
:
Generic.Dictionary<int, int> dic = new Generic.Dictionary<int, int>();
lock (((IDictionary)dic).SyncRoot)
{
// code
}
Dank dieser Quelle für die Info.
Natürlich ist ein Thread-sicher-Wörterbuch wäre schön, auch, wie andere vorgeschlagen haben.
Andere Tipps
Sie können jedes Objekt erfassen, die Sie (außer wertTypen) möchten. Es ist empfohlen , obwohl auf dem .SyncRoot Objekt zu sperren.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow