4
我有以下代碼,我基於Monitor class example on the msdn website。如何避免SynchronizationLockException?
private void WebRefresh_Click(object sender, EventArgs e)
{
if (WebRefresh.Enabled)//Only call from button
{
if (System.Threading.Monitor.TryEnter(deployIsRunning))
{
refreshWebVersion();
System.Threading.Monitor.Exit(deployIsRunning);
}
}
else
{
MessageBox.Show("You cannot refresh during a deploy");
}
}
的代碼拋出SynchronizationLockException上Monitor.Exit()一個錯誤消息調用:「對象同步方法是從代碼不同步的塊被稱爲」錯誤的解釋是我試圖釋放一個我沒有的互斥體,但是我不能輸入代碼塊Exit
,除非TryEnter
成功。我如何刪除此錯誤?