vc实现队列的问题,非常奇怪的现象
项目很大,不贴代码了,简单说说现象,各位大侠看看有没有遇到过。
用vc实现了一个队列,方法是用多线程对一个CObList对象进行操作。
奇怪的现象是:一个线程向这个链表中添加数据时一切正常,(通过断点跟踪CObList对象的大小,句柄等都正常)
而另一个线程从这个链表中取数据时就不正常了,现象是CObList对象的句柄为空,大小也为0,而此时添加线程仍然在向队列中添加数据,
队列中肯定有数据,可就是取数据时显示CObList队列为空。
从来没遇见过这样的问题,并且这个现象不是经常能出现的,有时候一个周多不出现有时候连续出现几次。。后来听说CObList对象不是线程安全的,
就在两个线程操作CObList对象的地方都加了锁,但是也不行。
现在只能求助于网络。