在那段代码中我想使用Lock(this)方法在asp.net中使用多个线程如何使用它请解释一下。我想在它的方法中使用多个线程,所以请
try
{
List<spEMS_MailSentSchedularListResult> dSchedularResult = ESManager.SendSchedularList();
if (dSchedularResult != null)
{
//这里我想要Lock方法,所以请你解释一下
for (int i = 0; i < dSchedularResult.Count; i++)
{
try
{
string strBody = "";
#region Creating STRBODY
strBody = AppConstant.MAIN_DIV_TAG_START + AppConstant.MAIN_TABLE_TAG_START_BGCOLOR.ToString() +
AppConstant.MAIN_TABLE_TR_TD_START_ALIGNMENT.ToString() +
AppConstant.MAIN_TABLE_TR_TD_END.ToString();
#endregion
}
catch (Exception ex)
{
Page_Error(ex);
}
}
}
}
catch (Exception ex)
{
Page_Error(ex);
}
finally
{
ESManager = null;
}
}
现在我已经提到锁定代码的创建位置请给我肯定的答复谢谢......
答案 0 :(得分:1)
您尚未明确要锁定的代码部分。
锁的一般用法是这样的
定义班级变量
private static object syncRoot = new Object();
以及何时使用
lock (syncRoot)
{
// your code to be locked.
}
希望有所帮助
Milind