Hallo,
in einer App sind mehrere Threads aktiv, und greifen paralell auf eine DataSet Table zu.
Wenn eine Reihe von DataRows durchlaufen werden sollen, verwende ich meistens For-Each-Schleifen.
Das geht solange gut, wie die Auflistung nicht von einem anderen Thread geändert wird.
Beispiel:
Der Code dient lediglich zu Veranschaulichung.
Damit kei anderer Thread während des Durchlaufens der Auflistung diese ändert, wird bislang auf SyncLock zurückgegriffen. Dadurch werden allerdings alle andere Threads in eine Wartestellung versetzt, sofern diese auch auch die gleiche Tabelle zugrifen wollen.
Gibt es eine alternative Lösung, die nicht auf SyncLock zurückgreift?
SyncLock setze ich nur ungern ein, da dieser Befehl ziemlich performancelastig ist.
Hat jemand eine alternative Lösung?
in einer App sind mehrere Threads aktiv, und greifen paralell auf eine DataSet Table zu.
Wenn eine Reihe von DataRows durchlaufen werden sollen, verwende ich meistens For-Each-Schleifen.
Das geht solange gut, wie die Auflistung nicht von einem anderen Thread geändert wird.
Beispiel:
Der Code dient lediglich zu Veranschaulichung.
Damit kei anderer Thread während des Durchlaufens der Auflistung diese ändert, wird bislang auf SyncLock zurückgegriffen. Dadurch werden allerdings alle andere Threads in eine Wartestellung versetzt, sofern diese auch auch die gleiche Tabelle zugrifen wollen.
Gibt es eine alternative Lösung, die nicht auf SyncLock zurückgreift?
SyncLock setze ich nur ungern ein, da dieser Befehl ziemlich performancelastig ist.
Hat jemand eine alternative Lösung?