我有四条线程要在每一个现成运行完后就要对一全局变量减一
我该怎么锁顶它,最好给个例子,谢谢了

解决方案 »

  1.   

    把你访问这个变量写在一个过程里面如MyProc
    调用的时候Synchronize(MyProc);
    或使用TCriticalSection
      

  2.   

    LockThreadsR.Acquire ;
              try
                 Dec(ThreadsRunning);
                 if ThreadsRunning = 0 then
                     ....                                
              finally
                 LockThreadsR.Release ;
              end;
    是这样用的吗?但这样的话我的现成就不运行了