a.今天学到一个非常试用的lock
语法:
lock(expression) statement_block
expression代表你希望跟踪的对象,通常是对象引用。一般地,如果你想保护一个类的实例,你可以使用this;如果你希望保护一个静态变量(如互斥代码段在一个静态方法内部),一般使用类名就可以了。而statement_block就是互斥段的代码,这段代码在一个时刻内只可能被一个线程执行。




































































































b.还有一个Moniter对象是用来监视对象的,
......
Queue oQueue=new Queue();
......
Monitor.Enter(oQueue);
......//现在oQueue对象只能被当前线程操纵了
Monitor.Exit(oQueue);//释放锁
上面表示oQueue这个对象只有一个线程可以操纵,只有当Mointor.Exit才可以被其它线程所操纵