c++ - 同时从多个线程访问只读数据是否明智?

标签 c++ multithreading thread-safety readonly

我有一个我正在尝试制作多线程的应用程序。每个线程都会访问一大块只读数据。

如果多个线程同时访问数据可以吗?我知道如果数据不是只读的,我需要使用互斥锁或其他形式的同步来防止竞争条件。但我想知道是否可以读取数据而不考虑同步。

所有个线程的持续时间内,相关数据不会被修改。该应用程序将在 Linux 和 Windows 上运行,并使用 C++ 编写,如果这有什么不同的话。

最佳答案

如果数据在读取它的所有线程的生命周期内都是只读的,那么是的,无需同步即可读取。

关于c++ - 同时从多个线程访问只读数据是否明智?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5643060/

相关文章:

c++ - 如何检查字符串是否指定目录?

python - 无法与 python 并行(线程)telnet 连接

java - 迭代列表的最佳方法是什么

java - 如何添加一个计时器对象以在一个线程上每 X 秒执行一次操作,在另一个线程上每 Y 秒执行一次操作?

ios - 在 iOS 中,什么时候我必须在主线程上运行某些东西?

main 完成后 C++ 内存泄漏?

c# - 从 C# 过渡到 C++,好的引用资料?

c++ - 找到两个二进制输入的xnor位c++

java - java 中显式调用父构造函数时的 super() 行为

php - 服务器进程采用PHP+MySQL