请教多线程问题

dkbrain 2009-06-12 10:34:43
我的程序里要控制五个相机,所以我想用五个线程,但是每个相机都要调用同一个回调函数以及另外一个函数,我现在就想请教各位一个问题:当多个线程同时调用一个函数时,比如最简单的排序函数(函数里肯定要定义一些 i,j以及一些中间变量),这时会不会发生冲突啊?
这时,这个问题要怎么解决啊?
没理由让我写五个同种函数,只是改下函数名以供不同线程调用啊。
...全文
40 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dong364 2009-06-15
  • 打赏
  • 举报
回复
如果不是操作全局,静态以及同一实例不会冲突的, 若有用互斥或临界一下即可, 很简单的
dong364 2009-06-15
  • 打赏
  • 举报
回复
如果不是操作全局,静态以及同一实例不会冲突的, 若有用互斥或临界一下即可, 很简单的
lxl843 2009-06-14
  • 打赏
  • 举报
回复
象你这种情况最好的方法就是用critical section锁定那个函数就可以了

5个线程调用同一个函数要排队,效率不高
lizhong2613 2009-06-13
  • 打赏
  • 举报
回复
同步要使用互斥量和信号量来做,很复杂,
zoulie 2009-06-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ouyh12345 的回复:]
局部变量不会引起冲突
会引起冲突的是全局变量、静态变量或类的变量
[/Quote]
共享变量要作好同步,不是一两句能说清楚的,看下多线程或者操作系统的书就明白了
ouyh12345 2009-06-13
  • 打赏
  • 举报
回复
局部变量不会引起冲突
会引起冲突的是全局变量、静态变量或类的变量
dkbrain 2009-06-13
  • 打赏
  • 举报
回复
楼上的能否说具体点?
雪碧爱可乐 2009-06-12
  • 打赏
  • 举报
回复
是会冲突,不过在调用该函数的时候,同步一下,应该可以吧!

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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