Wenn ich eine Mono .NET-Anwendung ausführe (es scheint nicht von den Eingabedaten abhängig zu sein, da sie sich nicht ändert), stoße ich manchmal auf folgende Situation: versucht, ein Element aus der Warteschlange entfernt von einer (nicht leer ist, überprüfe ich seine Zählung vorher) Queue, wird eine Ausnahme ausgelöst:Der Vorgang ist aufgrund des aktuellen Status des Objekts nicht gültig
Unbehandelte Ausnahme: System.InvalidOperationException: ist der Betrieb aufgrund des aktuellen Zustands des Objekts ungültig bei System.Collections.Generic.Queue
1[DBWorkItem].Peek()[0x00000] at System.Collections.Generic.Queue
1 [DBWorkItem] .Dequeue() [0x00000] bei DBProcessor.process (System.Object q) [0x0006b] in < ...>
Obwohl ich diese Ausnahme sicherlich fangen kann, wird das Element aus der Warteschlange genommen und verloren. Ist sonst noch jemand auf dieses Verhalten gestoßen?
Zugriff auf diese Warteschlange aus mehreren Threads? –