Lawo / ember-plus-sharp

Quickly implement fully type-safe Ember+ consumers in any .NET language
http://lawo.github.io/ember-plus-sharp
Boost Software License 1.0
21 stars 13 forks source link

System.ObjectDisposedException: Die Sammlung wurde verworfen. #77

Open sronline opened 5 days ago

sronline commented 5 days ago

I get sporadically unhandled exception at:

System.ObjectDisposedException: Die Sammlung wurde verworfen. Objektname: "BlockingCollection". bei System.Collections.Concurrent.BlockingCollection1.CheckDisposed() bei System.Collections.Concurrent.BlockingCollection1.TryAddWithNoTimeValidation(T item, Int32 millisecondsTimeout, CancellationToken cancellationToken) bei System.Collections.Concurrent.BlockingCollection`1.Add(T item) bei Lawo.Threading.Tasks.AsyncPump.SingleThreadSynchronizationContext.Post(SendOrPostCallback d, Object state) in ember-plus-sharp\Lawo\Threading\Tasks\AsyncPump.cs:Zeile 84. bei System.Threading.Tasks.SynchronizationContextAwaitTaskContinuation.PostAction(Object state) bei System.Threading.Tasks.AwaitTaskContinuation.RunCallback(ContextCallback callback, Object state, Task& currentTask) --- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde --- bei System.Threading.Tasks.AwaitTaskContinuation.<>c.b__18_0(Object s) bei System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(Object state) bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) bei System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() bei System.Threading.ThreadPoolWorkQueue.Dispatch() bei System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

Seems to occur when ember connection is lost.

sronline commented 1 day ago

Frameworkversion: v4.0.30319 Beschreibung: Der Prozess wurde aufgrund einer unbehandelten Ausnahme beendet. Ausnahmeinformationen: System.ObjectDisposedException bei System.Collections.Concurrent.BlockingCollection1[[System.Collections.Generic.KeyValuePair2[[System.Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].CheckDisposed() bei System.Collections.Concurrent.BlockingCollection1[[System.Collections.Generic.KeyValuePair2[[System.Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].TryAddWithNoTimeValidation(System.Collections.Generic.KeyValuePair2<System.__Canon,System.__Canon>, Int32, System.Threading.CancellationToken) bei System.Collections.Concurrent.BlockingCollection1[[System.Collections.Generic.KeyValuePair2[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].Add(System.Collections.Generic.KeyValuePair2<System.Canon,System.Canon>) bei Lawo.Threading.Tasks.AsyncPump+SingleThreadSynchronizationContext.Post(System.Threading.SendOrPostCallback, System.Object) bei System.Threading.Tasks.SynchronizationContextAwaitTaskContinuation.PostAction(System.Object) bei System.Threading.Tasks.AwaitTaskContinuation.RunCallback(System.Threading.ContextCallback, System.Object, System.Threading.Tasks.Task ByRef) bei System.Threading.Tasks.AwaitTaskContinuation+<>c.b__18_0(System.Object) bei System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object) bei System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) bei System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) bei System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() bei System.Threading.ThreadPoolWorkQueue.Dispatch() bei System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()")