c++多线程可能出现的问题

主要是一个多线程问题:是使用的函数_beginthread来建立多线程的。当我自己调试的时候,执行没问题,但是当部署到设备上的时候,程序没错误,但是经过程序处理的数据有小... 主要是一个多线程问题:是使用的函数_beginthread来建立多线程的。
当我自己调试的时候,执行没问题,但是当部署到设备上的时候,程序没错误,但是经过程序处理的数据有小的偏差,不大。 但当我用程序重新处理的时候,又能够得到正确的结果,百思不得其解!希望高手能帮忙解答下,或者给个思路怎么定位这个问题,已经好几周了,实在不能搞定!
展开
 我来答
foong_79
2012-02-03 · TA获得超过731个赞
知道小有建树答主
回答量:424
采纳率:100%
帮助的人:480万
展开全部
如多线程处理同一个数据时(不论读读或写)都必须枷锁
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xxcc309
2012-02-03 · TA获得超过409个赞
知道小有建树答主
回答量:403
采纳率:0%
帮助的人:332万
展开全部
是不是数据出现访问互斥了,有没有对公共数据加线程锁?有没有线程条件等待导致数据接收遗漏或延迟?这些都是可能出现的原因。
追问
有一个公共的写入链表,是加了锁的,但是还有很多其他的只是读的结构没加锁。
追答
只读的话你要保证这些数据在读的过程中没有被其他操作改变,不然读到的数据也是不准确的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式