c - 对于多线程的只读访问,GLib 的 GHashTable 是线程安全的吗?

标签 c multithreading glib

我想在程序初始化时创建一个 GHashTable,稍后仅供新创建的线程读取并发访问。

在没有锁的情况下这样做安全吗?

最佳答案

一般来说,只有当您可以在另一个线程中读取或修改数据的同时修改数据时,才需要互斥。如果所有的访问(在初始化时填充哈希表之后)都只是读取,则不需要锁。

关于c - 对于多线程的只读访问,GLib 的 GHashTable 是线程安全的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48173893/

相关文章:

c++ - C/C++ 当 select 挂起时将套接字添加到 fd_set

涉及Glib2库的C程序编译问题?

c - 为什么这个结构给出的大小为 24?

C 程序 - 导致指针崩溃

java - Java 中 Thread 中的 WeakReference

memory-management - 何时释放 GObject?

c - JSON (GLib) 序列化泄漏 GHashTable 的内存

c - 处理错误,无限循环

c - __udivdi3 undefined — 如何找到使用它的代码?

multithreading - 高速缓存一致性操作期间处理器是否停止