lock 锁
private static readonly object Locker1 = new object(); private readonly object Locker2 = new object();
单实例非静态锁,线程没有并发(加锁成功);
单实例静态所,线程没有并发(加锁成功);
多实例非静态所,线程并发(加锁失败);
多实例静态所,线程没有并发(加锁成功)
private static object objLock = new object();//锁
protected void ChuLi_RuChang_Sql(String KaoChangMingCheng)
{
//lock ("RuChang_" + SS + "_lock")//lock - String锁,用不同的String内容可以产生不同的锁
lock (objLock)//lock - String锁,用不同的String内容可以产生不同的锁
{
for (int i = 0; i < 20; i++)
{
NotFind.Business.MethodLibrary.HProgressBar.Start(i, (i + 1).ToString());//发送进度
Response.Write("<br />" + i);
System.Threading.Thread.Sleep(500);
}
}
}

浙公网安备 33010602011771号