mutex 相关问题

互斥(“互斥”)是一种在多个线程同时访问(特别是更改)相同数据或资源时确保完整性的机制。

如何实现一个线程安全函数,该函数使用键从共享哈希表中读取数据并在多线程环境中更新值?

假设我们有一些函数,它接受一个键,从共享哈希表中检索其值,并对它执行一些操作以获得新值,然后用这个新值更新哈希表

回答 1 投票 0

以线程安全的方式获取嵌套rwlock?

我正在以线程安全的方式管理一些每个客户的数据,如下所示: customer_id_to_data:弧>>>> 非常重要...

回答 1 投票 0

什么时候应该使用 std::atomic 而不是 std::mutex?

在How to use std::atomic<>这个问题中,显然我们可以使用std::mutex来保证线程安全。我想知道什么时候使用哪一个。 结构体A { std::atomic x{0}; 沃伊...

回答 1 投票 0

std::atomic<std::shared_ptr<Struct Demo>> 是否可以安全地与 C++11 一起使用,因为所述部分特化仅适用于 C++20?

根据文件,[强调我的]: 定义在头文件中 模板< class T > 结构原子; 模板< class U > 结构原子; (自 C++11 起) 定义在头文件中

回答 1 投票 0

如何锁定兄弟姐妹以防止竞争情况

型号: 班级清单 has_many :清单项目 结尾 类清单项目 属于:清单 after_save :update_checklist_completion def update_checklist_completion 如果是兄弟姐妹的话。

回答 1 投票 0

std::lock_guard 未按预期锁定互斥体

在以下示例中,func 应该挂起,因为它尝试在 main 之后获取锁: 使用命名空间 std; #包括 #包括 #包括 std::互斥体

回答 1 投票 0

错误 C2760 语法错误:意外标记 ')'。预期的 ';'当您尝试使用互斥体库时[关闭]

#pragma 一次 ## 这里我们包含保存scoped_lock 的库## #包括 命名空间 olc { 命名空间网 { 模板 队列类 { 公开...

回答 1 投票 0

错误 C2760 语法错误:意外标记“)”。预期的 ';'如何解决这个问题

#pragma 一次 #include“net_common.h” //使用命名空间std; 命名空间 olc { 命名空间网络 { 模板 队列类 {

回答 1 投票 0

ReentrantMutexGuardborrow_mut 被阻止

有人可以解释一下为什么当在 ReentrantMutexGuard 上执行borrow_mut() 时我的代码会出现恐慌。这是我的代码 使用 std::sync::Mutex; 使用 std::cell::RefCell; 使用 parking_lot::ReentrantMutex; #[德...

回答 1 投票 0

如何在生成的 tauri 异步运行时线程中使用托管 Tauri 状态变量?

我是 rust 新手,所以这是一个关于 tauri + rust 的问题。 我正在尝试构建这个应用程序,其中我有一个命令启动一个线程,该线程向rabbitmq发布许多消息,然后 emi...

回答 1 投票 0

是否可以使用Firebase实时数据库来实现分布式互斥体?

我正在考虑使用这样的事务来实现一种分布式锁: const lockId = 'myLock'; const lockRef = firebaseAdmin.database().ref(`/locks/${lockId}`); lockRef.transaction(

回答 2 投票 0

在 OSX 上具有合理性能的条件变量

我正在用 c++11 编写一个相当大的多线程程序,并试图保持与 linux 和 OS X 的兼容性。几周前,我注意到 OSX 的性能很糟糕,并且通过...

回答 1 投票 0

带有用户循环输入的C++多线程

我想完成一个程序,它可以在循环中接受用户输入并使用多线程进行一些计算,当用户想要退出时,循环退出。就绪意味着线程已准备好......

回答 1 投票 0

C# Mutex 未发布? EZCAD2MUTEX_MARKING

我正在尝试使用公开记录的互斥体来检测 EzCad2 软件当前是否处于激光打标(互斥体锁定/发出信号)或空闲状态(互斥体释放/未发出信号)。根据文件...

回答 1 投票 0

使用Python线程使model_averaging在联邦学习中独占

我使用以下代码创建 num_of_clients 线程: 套接字线程 = [] 客户端数量 = 1 所有数据 = b"" 而真实: 尝试: 对于我在范围内(no_of_client):

回答 1 投票 0

C++设置返回值互斥体

在使用 FreeRTOS 在 ESP32 上运行的应用程序中,我实现了一个负责存储各种设置的设置类。我目前担心这个类的线程安全,

回答 1 投票 0

如何在静态函数上互斥(在 Java 中)?

我已经在java互斥方面苦苦挣扎了一段时间,我试图让ByteIterator对象每个打印一个他们从JobQueue获得的新的(且唯一的)byte[],但他们不断地打印重复的v...

回答 1 投票 0

用额外的范围包围 std::lock_guard 以减少关键部分的大小是否有意义?

将 std::lock_guard 放在额外的作用域中以使锁定周期尽可能短是否有意义? 伪代码: // 除 lock_guard 之外所有使用的变量都是

回答 5 投票 0

std::mutex 公平吗? [重复]

正如问题所述, std::mutex 公平吗?即,如果线程 A 锁定了互斥锁,然后 B 和 C 按此顺序对其调用“lock()”,那么它们是否会以相同的顺序获得互斥锁,或者是

回答 2 投票 0

如何在不饥饿的情况下锁定 std::mutex

在我的程序中,我有一个互斥锁和两个线程。这些线程之一经常获取锁。另一个线程尝试获取但必须永远等待。 难道是锁被获取了……

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.