举个例子,如果有一份资源,假如为list<int>资源,假设有两个线程要对该资源进行压入弹出操作,如果不进行锁的话,那么如果两个线程同时操作,那么必然乱套,得到的结果肯定不是我们想要的结果.于是引入了锁的机制,当一个线程进行相应操作之前加一把锁,访问结束后再释放锁,那么问题便可得到解决,但是会存在一个隐患: 比如线程A对该资源上了一把锁x,又上了一把锁y,然后对资源i进行弹出元素,这时候又有了另外一个线程B,他想要进行压入操作,那么他得等到线程A弹出操作结束并释放锁才行,假设线程A 的弹出操作…