多个线程能同时访问同一个全局对象的方法吗?

tianfj 2004-08-13 03:29:38

有两个线程:thread1和thread2
有一个全局对象obj,全局对象有一个方法fun1
如果两个线程同时访问这个方法fun1,程序回出错吗?


谢谢大虾。

...全文
345 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2004-08-14
  • 打赏
  • 举报
回复
楼上的方法都很好
mythay 2004-08-13
  • 打赏
  • 举报
回复
如果只是代码而没有数据的共用一点问题都没有,有的话就设互斥量吧,要么线程局部存储
DentistryDoctor 2004-08-13
  • 打赏
  • 举报
回复
如果只读就不用了。
DentistryDoctor 2004-08-13
  • 打赏
  • 举报
回复
加临界区保护。
rwdx 2004-08-13
  • 打赏
  • 举报
回复
没有写全局或静态变量操作在多处理器机器上不知道会怎样,两个线程同一时刻读一个内存地址
薛定谔之死猫 2004-08-13
  • 打赏
  • 举报
回复
没有写全局或静态变量操作就应该没问题
oyljerry 2004-08-13
  • 打赏
  • 举报
回复
如果想多个读的话,可以考虑信号量
如果多个写,就必须严格控制了,不能同时写,这时,可以用互斥
「已注销」 2004-08-13
  • 打赏
  • 举报
回复
funl中不能包括对obj中定义变量和全局变量的写的操作,就可以。
最安全的方法是使用互斥区。
howtotell 2004-08-13
  • 打赏
  • 举报
回复
只要没有同时访问一个变量,文件等就不会出错.这里的出错是指结果错误,程序本身不会提示.
可以用信号量,临界区等来控制多个进程对资源的访问.

15,471

社区成员

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

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