lock-free 相关问题

用于在不使用锁的情况下同步多线程环境或其他形式的分布式系统的方法和算法的总称。

可变大小元素无锁队列

我得到了渲染系统,现在让它成为单一生产者和单一消费者系统,生产者拥有逻辑对象,并且可以在那里更新状态,消费者拥有被渲染的图形对象...

回答 1 投票 -1

共享内存IPC同步(无锁)

考虑以下情形:要求:Intel x64 Server(多个CPU插槽=> NUMA)Ubuntu 12,GCC 4.6两个进程通过(命名的)共享内存Classical ...共享大量数据。

回答 2 投票 12


C ++ 11标准为什么不提供其他无锁原子结构

我知道std :: atomic_flag保证是无锁的,而其他原子的东西,例如std :: atomic ,std :: atomic 则不是,这意味着它们可能是由...生成的。

回答 1 投票 1

是否有类似Java的C ++中的AtomicStampedReference?

我正在学习无锁结构,并且发现了ABA问题。我认为Java的AtomicStampedReference可以解决此问题。那么,C ++中有什么可以解决这个问题的?

回答 1 投票 0

在c ++中是否有类似(java中的AtomicStampedReference的东西?

我正在学习无锁结构,并且发现了ABA问题。我认为AtomicStampedReference(在Java中)可以解决此问题。因此,在c ++中:有什么类似的方法可以解决此问题吗?谢谢

回答 1 投票 0

std :: atomic的实现方式

我正在研究C ++ 11中互斥锁和原子之间的区别。据我了解,互斥锁是一种锁定机制,它是基于OS /内核实现的。例如,Linux提供了一个...

回答 1 投票 1

使用自由列表的多线程无锁定双链表

我想要一个并发数据结构,其工作方式类似于单链列表,仅需要append和remove_iterator操作。最后,一个线程将迭代所有节点。从我的研究中,我得到了...

回答 2 投票 0

为什么log4j-slf4j-impl不是无锁的?

我在我们的应用程序中在slf4j上使用了异步log4j2,并且我确定这是非阻塞的。但是在集成BlockHound之后,我得到了一个惊喜:java.lang.Exception:[worker-1-8]阻止调用:sun.misc.Unsafe#park ...

回答 1 投票 0

一个单元在哪个级别测试无锁代码?

可以使用LLVM,QEMU,GDB,Bochs,OpenStack等在开源平台上对无锁并发代码进行单元测试吗?有没有人实现过这个?如果您通过推荐软件回答,我不...

回答 1 投票 4

C无锁队列内存管理

为了提高我的C技能,我实现了一个线程安全且无锁的队列。该算法来自Maurice Herlihy和Nir Shavit的“多处理器编程艺术”一书的第10.5章......

回答 2 投票 3

两个unique_ptr的无锁交换

交换两个unique_ptrs并不保证是线程安全的。的std ::的unique_ptr a,b; std :: swap(a,b); //不是threadsafe因为我需要原子指针交换,因为我喜欢所有权......

回答 3 投票 35

带有翻转缓冲器的无锁容器

对于我的一个必须支持并发读写的项目,我需要一个能够缓冲项目的容器,直到消费者一次获取每个当前缓冲的项目。作为生产者......

回答 2 投票 1

boost :: lockfree :: queue(在多线程程序中)是否可锁定?

我正在开发一个程序,其中2+(gstreamer)boost :: threads和一个虚拟应用程序的相同数量的boost :: threads同时使用队列。现在这个队列用于同步......

回答 1 投票 1

可以通过两个boost lockfree队列导致死锁

我的整体设计是让多个生产者线程(> 2)将结果生成为两个原子 processing_done = FALSE; //当所有生产者完成//将设置为true boost :: ...

回答 1 投票 -2

可以检查boost :: lockfree :: queue是否已满?

我正在使用boost :: lockfree :: queue Foo(128)。在弹出队列之前,我可以通过Foo.empty()函数检查队列是否为空状态。我想知道我是否可以同样检查它的状态...

回答 1 投票 0

/boost/lockfree/queue.hpp:错误:静态断言失败:(boost :: has_trivial_destructor ::值)

我试图在此文件中将boost :: lockfree :: queue替换为std :: queue https://github.com/zaphoyd/websocketpp/blob/experimental/examples/broadcast_server/broadcast_server.cpp我添加了#include ...

回答 2 投票 4

无锁进步保证

有趣的是,我发现很多程序员错误地认为“无锁”只意味着“没有互斥的并发编程”。通常,还有一个相关的误解......

回答 6 投票 17

C11无锁乒乓球

我对C语言中的并发性非常陌生,并试图做一些基本的工作人员来理解它是如何工作的。我想编写一个符合无锁定乒乓的实现,即一个线程打印ping,...

回答 1 投票 2

锁定免费的非分配集合

我正在寻找一个集合数据结构:线程安全锁定免费非分配(摊销或预分配是好的)非侵入性不使用外来内在元素顺序不...

回答 1 投票 0

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