KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I've read several articles and posts that say that lock(this) , lock(typeof(MyType)) , lock("a string") are all bad practice because another thread could lock on the same key and cause a deadlock. In order to understand this problem, I was trying to create some sample code to illustrate the deadlock but have been unable to wrap my head around this. Can someone write a concise bit of code that illustrates this classic problem? Please keep it short, I can digest code in smaller chunks only. Edit: I think lassevk sums it up well; that the real problem is that you have lost control over your locks. Once that happens, you cannot control the order the locks are called, and you are allowing a potential deadlock situation. lock(this) , lock(typeof(MyType)) , etc all are situations where you have chosen a lock that is impossible to control.
Tags (comma-separated)
Save Edits
Cancel