mutex 相关问题

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

Python:应用程序必须等待另一个完成(互斥)

我正在创建一个必须一次运行一个的应用程序,所以我尝试根据以下配方创建它: https://code.activestate.com/recipes/474070-creating-a-single-instance-application/ 问题...

回答 1 投票 0

这个函数需要加锁吗?

这是互斥锁的示例。 #包括 pthread_mutex_t count_mutex; 长长计数; 空白 增量计数() { pthread_mutex_lock(&count_mutex); 计数 = 库...

回答 1 投票 0

Mutex 和 CPU 缓存(和内存栅栏)的关系

假设我有一个具有多个线程的应用程序需要访问一些共享数据。 我知道可以使用互斥锁(关键部分)来确保一次最多有一个线程可以访问

回答 1 投票 0

如何保证tlsConfig中VerifyPeerCertificate的顺序?

我有一个带有 tlsConfig 的 tls 监听: 监听器, _ := tls.Listen("tcp", ":8080", tlsConfig) 为了 { fmt.Println("1", time.Now()) peerMutex.Lock() 康涅狄格州,_...

回答 1 投票 0

VB6:跨所有用户会话的单实例应用程序

我有一个应用程序需要成为跨 Windows PC 上所有用户会话的单实例应用程序。到目前为止,我的研究主要集中在使用互斥体来完成此任务,但我有一个......

回答 3 投票 0

为什么GDB中“futex断点”和write()会互相影响

当我使用 gdb 通过输出调试 futex 锁时,程序陷入了一个奇怪的循环。 #包括 #包括 #包括 #包括 不稳定...

回答 1 投票 0

尽管使用了互斥体,C++ 并行程序中仍存在持续数据争用警告

尽管使用互斥体,我在 C++ 并行程序中遇到了持续的数据争用警告。我已经使用 OpenMP 和互斥体实现了一个解决方案来同步对共享数据的访问,但我认为...

回答 1 投票 0

pthread 互斥锁无法正常工作

我有一段代码,我使用 pthread_mutex_t 来保护关键部分,但它不起作用,当一个线程锁定互斥锁时,另一个线程如何访问关键部分...

回答 1 投票 0

Rust 中的线程安全可变交叉引用

我想实现两个不同的结构,它们相互引用,可以相互变异,并且是线程安全的。 我可以介绍以下例子: pub 结构体玩家 { 酒吧x:...

回答 1 投票 0

有关通过 std::atomic_flag 实现自旋锁互斥锁的问题

我目前正在阅读一本名为《C++ concurrency in action》的书。有一个自旋锁互斥实现的例子: 类 spinlock_mutex { std::atomic_flag 标志; 民众: 自旋锁_互斥体(): 标志(ATOMIC_FLA...

回答 1 投票 0

我的阻塞队列实现有什么问题

//线程安全队列 模板 类阻塞队列{ 民众: 阻塞队列() { isempty.lock(); } 无效推(T obj){ std::lock_guard...

回答 1 投票 0

关闭互斥体句柄

我想关闭突变句柄以在两个窗口中运行应用程序。 句柄名称是: \Sessions\BaseNamedObjects\Growtopia 我可以在 Process Hacker 中关闭它,但我不知道如何...

回答 1 投票 0

操作系统线程调度因素是否会影响使用 std::sync::Mutex 与 tokio::sync::Mutex 的决定?

tokio::sync::mutex 文档提到了以下内容: 与普遍的看法相反,在异步代码中使用标准库中的普通互斥体是可以的,而且通常是首选。 这个

回答 1 投票 0

pthread_cond_wait()和pthread_cond_signal()的理解

一般来说,pthread_cond_wait() 和 pthread_cond_signal() 的调用如下: //线程1: pthread_mutex_lock(&mutex); pthread_cond_wait(&cond, &mutex); 做一点事()

回答 3 投票 0

为什么Mutex中包含一个Box?

Rust 的 std::sync::Mutex 是一个包含堆分配的内部互斥体的结构,以及这个半神秘的注释: pub 结构互斥体 { // 请注意,此互斥体位于 *bo...

回答 2 投票 0

在 c++17 中用 std 替换 boost::timed_wait()

我有一个条件变量 std::condition_variable my_cond; 我希望能够用 std 等效项替换 boost::timed_wait() 。 如果前面提到的条件变量是提升...

回答 1 投票 0

所有写入完成后保持互斥锁

我有一个关于 C++ 中线程安全和互斥锁的问题。我知道,在最简单的层面上,应该在任何可能同时读写的点保持互斥锁......

回答 1 投票 0

Java 中无需 volatile 关键字即可实现并发

Go语言编程9.2中的sync.Mutext一书有一个例子: 变量( sema = make(chan 结构{}, 1) 余额整数 ) func 存款(金额 int) { 塞玛<- struct{}{} balance = balance +

回答 1 投票 0

在C++中`for`循环的条件语句中使用右值

我正在执行一项编程任务,该任务接受一个 n 值并使用三个线程来打印零、偶数和奇数。 例如,如果n = 3,它将打印010203。我遇到了一个奇怪的行为...

回答 1 投票 0

在Go中,如何使用互斥锁与Go例程进行锁定和等待

我的代码是这样的: var 锁sync.Mutex 函数 DoSomething() { 锁.Lock() 去函数(){ 延迟锁定.Unlock() // 代码在这里 }() } 函数等待() { 锁.Lock() 锁.U...

回答 1 投票 0

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