大家可以在使用到了互斥量的类中包含这个AutoLock类
原理十分简单, AutoLock类对象在构造时对构造时传入的互斥量加锁, 析构时对该互斥量解锁, 这样Test类中的Fun函数就整个加锁了, 而我们无须担心忘记解锁, 另外如果不想给整个Fun加锁, 可以在需要开始加锁的地方构造AutoLock对象, 若还需要在Fun函数结束前解锁还可以通过new delete AutoLock对象来实现, 不过那样就不如直接使用EnterCriticalSection以及LeaveCriticalSection了, 失去了AutoLock的意义。