The perils of .NET's Task.Run and how to avoid them

Brannon King (14.Jul.2017 at 10:30, 50 min)
Talk at OpenWest Conference 2017 (English - US)

Rating: 0 of 5

.NET's Task libraries are powerful and handy, but they are easily abused. In particular, the thread pool provides no guaranteed execution ordering, which is critical for small, thread-safe state machines. I will show some abstractions (available in an open source library I wrote called Kts.Actors) that mitigate this issue. I'll also show some examples from MS's TPL Workflow package, which is similar. See

I'll also discuss a small state machine example. .NET's async/await push has brought us awaitable socket connections. However, users like to see it in a four-state perspective: disconnected, disconnecting, connecting, and connected. How can you transition between these in a thread-safe manner? [174]

Who are you?

Claim talk

Talk claims have been moved to the new site.

Please login to the new site to claim your talk

Want to comment on this talk? Log in or create a new account or comment anonymously

Write a comment

Please note: you are not logged in and will be posting anonymously!
= four plus five
No comments yet.
© 2017