小编Mik*_*keJ的帖子

lock()语句会阻塞进程/ appdomain中的所有线程吗?

也许问题听起来很愚蠢,但我不明白'关于线程和锁定的东西,我想得到一个确认(这就是我问的原因).

所以,如果我有10个服务器,同时有10个请求来到每个服务器,那就是整个服务器场的100个请求.没有锁定,那就是100请求数据库.

如果我做这样的事情:

private static readonly object myLockHolder = new object();
if (Cache[key] == null)
{
   lock(myLockHolder)
   {
      if (Cache[key] == null)
      {
         Cache[key] = LengthyDatabaseCall();
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

我会做多少个数据库请求?10?100?或者我有线程?

c# asp.net multithreading

11
推荐指数
1
解决办法
5504
查看次数

标签 统计

asp.net ×1

c# ×1

multithreading ×1