小编use*_*515的帖子

从多个线程读取全局数据是否安全?

方案如下:

  1. 创建一个类的实例(std :: map)并将其作为全局变量进行处理.
  2. 产卵线程.
  3. 线程读取并使用相同的全局类实例(调用方法,访问成员等)
  4. 所有衍生的线程都退出了
  5. 全局类实例被销毁

没有使用互斥锁,没有生成线程修改全局类实例.

这个可以吗?

谢谢

c++ multithreading

2
推荐指数
1
解决办法
1181
查看次数

点运算符成本c/c ++

我们都知道 - > vs.使用c/c ++访问成员的速度差异,但我很难找到简单点运算符的实际成本的任何线索.

我想象它的结构地址+偏移量,也假设偏移量是所有前面成员的所有sizeof-s的总和.这(大致)是否正确?

然后比较 - >谁快得多?两次?
(看过一些asm,在这里,关于.访问是一条指令,我想有一些魔法)

另外,与局部变量相比,速度有多慢?

谢谢

编辑:
我猜,我没有正确地问它.

试图澄清事情:
通过" - > vs." 我的意思是"使用指针访问结构"vs"直接成员访问" - (链接).
然后我只是好奇:"好吧,那么点访问本身呢?它花费了很多钱." 所以我问了这个问题.

"点算子成本c/c ++"本身可能是荒谬/无意义/天真的问题,但它确实得到了我正在寻找的答案.现在不能说好些了.

谢谢

c c++ dot-operator

0
推荐指数
2
解决办法
2025
查看次数

标签 统计

c++ ×2

c ×1

dot-operator ×1

multithreading ×1