lock-free

lock-free

文章 0 浏览 3

什么时候无锁数据结构的性能低于互斥(互斥体)?

我在某处读到(不再找到该页面),无锁数据结构“对于某些工作负载”更有效,这似乎意味着有时它们实际上更慢,或者在某些情况下从它们中获得的收益可…

柒夜笙歌凉 2024-08-08 07:51:05 2 0

随着CPU数量的增加,原子操作是否会变得更慢?

x86 和其他体系结构提供特殊的原子指令(lock、cmpxchg 等),允许您编写“无锁”数据结构。但随着越来越多的核心被添加,似乎这些指令实际上必须在幕…

墨离汐 2024-08-08 07:50:38 2 0

原子操作跨进程的工作方式与跨线程的工作方式相同吗?

显然,原子操作可确保不同的线程不会破坏值。但是,当使用共享内存时,跨进程仍然如此吗?即使进程碰巧被操作系统安排在不同的内核上运行?或者跨不同…

此岸叶落 2024-08-08 01:48:53 4 0

使用 Interlocked 进行线程安全的日期时间更新。*

我可以使用 Interlocked.* 同步方法来更新 DateTime 变量吗? 我希望在内存中保留最后一次接触的时间戳。多个http线程将更新最后一个触摸DateTime变量…

妖妓 2024-08-07 04:11:30 11 0

C# 的“锁”是? Interlocked.CompareExchange构造已过时?

摘要: 在我看来: 将表示逻辑状态的字段包装到单个不可变的可使用对象中, 通过调用 Interlocked.CompareExchange 更新对象的权威引用 并适当处理更…

反话 2024-08-05 09:30:25 10 0

为什么无锁并发如此重要(在 Clojure 中)?

我听说 Clojure 具有无锁并发性,这很重要。 我使用过多种语言,但没有意识到它们在幕后执行锁定。 为什么这在 Clojure(或任何具有此功能的语言)中…

风月客 2024-08-03 07:04:48 7 0

Solaris on Sparc 上的atomic_cas_64() 的内部实现?

在 Sparc 上的 64 位 Solaris 上,atomic_cas_64() 函数调用是使用加载链接/条件存储实现的吗? 如果没有,Solaris 是否为用户模式 ​​C 代码提供任…

美羊羊 2024-08-01 19:38:10 3 0

SPARC v9 是否有双字比较和交换指令?

所以 在兼容 v9 的 64 位 SPARC CPU 上,存在我知道的 cas 指令。 这对单字长度值进行操作。 我还在网上看到了对 casx 指令的引用 - 但我找不到更多关…

一萌ing 2024-08-01 13:33:30 5 0

无锁和非阻塞有什么区别?

在数据结构同步的背景下,有人可以澄清“无锁”和“非阻塞”之间的区别吗? 这些术语似乎被很多人互换使用,但我还不确定是否在某处隐藏着一些微妙的…

寄与心 2024-07-30 01:14:12 8 0

用户空间的内存障碍? (Linux、x86-64)

在内核端设置内存屏障很容易:由于 Linux 内核头文件,宏 mb、wmb、rmb 等始终处于适当位置。 在用户端如何实现这一点?…

冰魂雪魄 2024-07-29 07:23:14 6 0

这段代码是线程安全的吗?

这是我当前维护的一些代码的简化版本: int SomeFunc() { const long lIndex = m_lCurrentIndex int nSum = 0 nSum += m_someArray[lIndex] nSum += m…

帥小哥 2024-07-29 02:46:30 4 0

便携式比较和交换(原子操作)C/C++ 图书馆?

是否有任何小型库,可以将各种处理器的类似 CAS 的操作包装成可跨多个编译器移植的宏或函数? PS. atomic.hpp Library 位于 boost::interprocess::det…

很快妥协 2024-07-27 15:00:40 4 0

这种无锁 fifo 队列管理算法有什么好处吗?

Closed. This question is seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. It does not …

浮华 2024-07-27 05:36:06 6 0

GCC 原子内置函数而不是 pthread?

我发现以下文章: 使用 GCC 提供的原子锁操作替换 pthread_mutex_lock 函数 它指的是 GCC 原子内置。 本文建议使用 GCC 原子内置函数而不是 pthread …

刘备忘录 2024-07-27 02:11:23 6 0

使用 64 位指针进行无锁内存回收

Herlihy 和 Shavit 的书(多处理器编程的艺术)内存回收使用解决方案Java 的 AtomicStampedReference。 要用 C++ 为 x86_64 编写一个,我想至少需要 1…

记忆で 2024-07-25 14:35:12 4 0
更多

推荐作者

1CH1MKgiKxn9p

文章 0 评论 0

ゞ记忆︶ㄣ

文章 0 评论 0

JackDx

文章 0 评论 0

信远

文章 0 评论 0

yaoduoduo1995

文章 0 评论 0

霞映澄塘

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文