vc实现队列的问题,非常奇怪的现象

zxd_0511 2009-04-29 11:56:49
项目很大,不贴代码了,简单说说现象,各位大侠看看有没有遇到过。

用vc实现了一个队列,方法是用多线程对一个CObList对象进行操作。

奇怪的现象是:一个线程向这个链表中添加数据时一切正常,(通过断点跟踪CObList对象的大小,句柄等都正常)
而另一个线程从这个链表中取数据时就不正常了,现象是CObList对象的句柄为空,大小也为0,而此时添加线程仍然在向队列中添加数据,
队列中肯定有数据,可就是取数据时显示CObList队列为空。

从来没遇见过这样的问题,并且这个现象不是经常能出现的,有时候一个周多不出现有时候连续出现几次。。后来听说CObList对象不是线程安全的,
就在两个线程操作CObList对象的地方都加了锁,但是也不行。
现在只能求助于网络。
...全文
40 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧