userJames Kingcancel
branchsbox/worker-safetycancel

4 Commits over 28 Days - 0.01cph!

3 Years Ago
Expirable SyncContext refactor * Rename MainThreadContext to ExpirableSynchronizationContext * ExpirableSynchronizationContext supports having multiple live instances on different threads * Added SyncContext static class to handle resetting on session end * MainThreadContext.Instance is now SyncContext.MainThread etc More control over addon tasks running on worker threads * Added an ExpirableSynchronizationContext for worker tasks * WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread * WorkerThread.Stop() causes those worker tasks to exit, can be restarted later * Stop worker threads during hotload * Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread Fixed errors after rebase
3 Years Ago
Expirable SyncContext refactor * Rename MainThreadContext to ExpirableSynchronizationContext * ExpirableSynchronizationContext supports having multiple live instances on different threads * Added SyncContext static class to handle resetting on session end * MainThreadContext.Instance is now SyncContext.MainThread etc More control over addon tasks running on worker threads * Added an ExpirableSynchronizationContext for worker tasks * WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread * WorkerThread.Stop() causes those worker tasks to exit, can be restarted later * Stop worker threads during hotload * Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread
3 Years Ago
Expirable SyncContext refactor * Rename MainThreadContext to ExpirableSynchronizationContext * ExpirableSynchronizationContext supports having multiple live instances on different threads * Added SyncContext static class to handle resetting on session end * MainThreadContext.Instance is now SyncContext.MainThread etc More control over addon tasks running on worker threads * Added an ExpirableSynchronizationContext for worker tasks * WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread * WorkerThread.Stop() causes those worker tasks to exit, can be restarted later * Stop worker threads during hotload * Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread
3 Years Ago
Expirable SyncContext refactor * Rename MainThreadContext to ExpirableSynchronizationContext * ExpirableSynchronizationContext supports having multiple live instances on different threads * Added SyncContext static class to handle resetting on session end * MainThreadContext.Instance is now SyncContext.MainThread etc More control over addon tasks running on worker threads * Added an ExpirableSynchronizationContext for worker tasks * WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread * WorkerThread.Stop() causes those worker tasks to exit, can be restarted later * Stop worker threads during hotload * Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread