What is causing this particular method to deadlock?
问题 As best as I can, I opt for async all the way down. However, I am still stuck using ASP.NET Membership which isn't built for async. As a result my calls to methods like string[] GetRolesForUser() can't use async. In order to build roles properly I depend on data from various sources so I am using multiple tasks to fetch the data in parallel: public override string[] GetRolesForUser(string username) { ... Task.WaitAll(taskAccounts, taskContracts, taskOtherContracts, taskMoreContracts,