如何从更基本的同步基元中制作多读/单写锁?
作者:sbi 提问时间:1/9/2015
我们发现,在我们的代码中有几个地方,对受互斥锁保护的数据的并发读取相当普遍,而写入则很少见。我们的测量结果似乎表明,使用简单的互斥锁会严重阻碍读取该数据的代码的性能。因此,我们需要的是一个多读/单写互...
readwritelock 问答列表
作者:sbi 提问时间:1/9/2015
我们发现,在我们的代码中有几个地方,对受互斥锁保护的数据的并发读取相当普遍,而写入则很少见。我们的测量结果似乎表明,使用简单的互斥锁会严重阻碍读取该数据的代码的性能。因此,我们需要的是一个多读/单写互...
作者:sborpo 提问时间:8/30/2020
我有一个 python 应用程序,它使用主数据访问数据库 (PostgreSQL) 以便在其中进行搜索 - 由搜索线程(一个 150 mb 的数据库)完成。 每天更新一次数据库(删除和加载新表)的更...
作者:Stefan 提问时间:10/26/2020
来自oracle: 读写锁定是否会在使用过程中提高性能 互斥锁取决于数据的频率 读取与被修改相比,读取和写入的持续时间 操作和数据争用 - 即 将尝试同时读取或写入数据的线程。 作为一个初学者,我...
作者:licha 提问时间:12/20/2020
我有一个程序,比如main.cpp #include <stdio.h> #include <boost/thread/shared_mutex.hpp> #include <boost/threa...
作者:Juan Gil 提问时间:4/25/2021
已关闭。这个问题需要细节或澄清。它目前不接受答案。 想改进这个问题吗?通过编辑这篇文章添加详细信息并澄清问题。 2年前关闭。 改进此问题 我需要编写器线程优先访问关键区域而不是读取器线程,我可...
作者:SHM 提问时间:1/9/2022
我正在使用 Python 线程同时完成一些工作。我让主线程执行,并创建一个线程同时执行。以下是我正在处理的代码的简化版本:task_Atask_B import threading import n...
作者:elizalde1981 提问时间:4/5/2022
我是 Redisson 的新手,并尝试实现 ReadWriteLock 降级,但在发布 writeLock 后,即使仍有读锁并且 30 秒后读锁消失,Redisson 也不会更新锁。 我创建了一个简...
作者:leuction 提问时间:5/13/2022
我有一个清理一些对象以及 ReaderWriterLockSlim 的功能。但是我需要 ReaderWriterLockSlim 锁定为写入器锁,以防止另一个线程在我进行清理时读取数据。 Concu...
作者:LaPlace 提问时间:2/1/2021
以下一段伪代码显示了一个典型的读取器/写入器方案: string document; string::size_type length = 0; write() { while (true) {...
作者:vicxu 提问时间:7/25/2022
上下文 我在一家加密货币交易所公司担任后端工程师。最近,我们的匹配系统面临性能问题。当用户的订单匹配时,系统将扣除或添加订单金额到他们的账户中。此过程将使用数据库写锁锁定用户帐户。 问题 如果用...