lockfree-queue:基于数组的无锁队列

时间:2024-03-03 12:43:12
【文件属性】:

文件名称:lockfree-queue:基于数组的无锁队列

文件大小:10KB

文件格式:ZIP

更新时间:2024-03-03 12:43:12

C

固定大小的无锁队列(2010) 队列是在生产者/消费者算法中广泛发现的抽象数据类型。 许多良好的实现都是锁死的,并且可能会与数千个并发线程在其上添加和使用数据的情况发生激烈争用。 上述技术可用于实现完全无锁的基于数组的队列: lockfree queue primitives typedef struct _queue_t *queue_t; queue_t queue_create(size_t); void *queue_dequeue(queue_t); int queue_enqueue(queue_t, void *); 队列的期望深度是在创建时由queue_create定义的, queue_dequeue返回元素地址,如果队列为空,则返回NULL ,要排队的元素的地址传递给queue_enqueue ,如果操作成功,则返回0 ,返回1如果队列已满。 内部数据结构,初始化:


【文件预览】:
lockfree-queue-master
----lfq.c(3KB)
----atomic.h(4KB)
----test.c(3KB)
----Makefile(605B)
----lfq.h(2KB)
----README.md(9KB)

网友评论