通常程序卡住了,主要有双方面的可能: (1)死循环了 (2)死锁了 要确定是否是死循环.能够通过调试器(经常使用Windbg)查看线程执行时间,假设隔了一段会儿两次查看的执行时间有非常大区别,那么非常有可能是死循环了.反之,可能是死锁了.这时候能够看一下堆栈最上帧是不是在调用相似WaitForSingleObject或者WaitForMultiObject之类的函数.假设线程非常多,仅仅能逐步排查那些线程在等哪些锁. 关于容器的删除操作 vector,list,map都能够通过erase函数删除…