用单例模式,记录排队的人数,static count=0;int n=10;
有人进来就
PD:
if(count<n)
{
lock(_lock){
  if(count<n)
  {
  count++;
  //这里是处理
  count--
  }
  else{
   System.Threading.Thread.Sleep(800)//等待多少秒
   goto PD;
   } 
}
else{ 
   System.Threading.Thread.Sleep(1000)//等待多少秒
   goto PD;
}
  

解决方案 »

  1.   


    可以明白点么?这个单例模式没怎么用过,好比System.Threading.Thread.Sleep(1000),为什么需要等待?goto PD;又是什么意思?_lock这个参数从哪里来?
      

  2.   

    不是第次要10秒后才返回结果。而是,程序还没有执行到哪里。因为这是一个队列,需要排队等待。假设在处理第m次的请求前,就需要先处理完第m次的前一次第m-1次的请求,如果第m-1次的请求还没有处理,那第m次的处理就一直处理排队等待状态,不被服务器接收。所以:第十次要10秒后才能返回结果,不是这个意思。只要前一次处理没有被执行,下一次请求就不被处理。