Thread overview
lock-free library for D?
Dec 30, 2023
zoujiaqing
Dec 30, 2023
zoujiaqing
Dec 31, 2023
mw
Dec 31, 2023
zoujiaqing
Dec 31, 2023
mw
Jan 16, 2024
RJ Nowling
Jan 16, 2024
mw
Jan 16, 2024
zoujiaqing
December 30, 2023

C++ boost now has a lock-free queue library:
https://github.com/boostorg/lockfree/tree/develop/include/boost/lockfree

It includes single-producer, single-consumer and multi-producer, multi-consumer queues.

Better performing libraries:
https://github.com/rigtorp/SPSCQueue
https://github.com/cameron314/concurrentqueue
https://github.com/max0x7ba/atomic_queue

December 30, 2023

On Saturday, 30 December 2023 at 18:08:06 UTC, zoujiaqing wrote:

>

C++ boost now has a lock-free queue library:
https://github.com/boostorg/lockfree/tree/develop/include/boost/lockfree

It includes single-producer, single-consumer and multi-producer, multi-consumer queues.

Better performing libraries:
https://github.com/rigtorp/SPSCQueue
https://github.com/cameron314/concurrentqueue
https://github.com/max0x7ba/atomic_queue

atomic_queue is a port of C++’s max0x7ba/atomic_queue implementation to rust:
https://crates.io/crates/atomic-queue

December 31, 2023

On Saturday, 30 December 2023 at 18:08:06 UTC, zoujiaqing wrote:

>

C++ boost now has a lock-free queue library:
https://github.com/boostorg/lockfree/tree/develop/include/boost/lockfree

It includes single-producer, single-consumer and multi-producer, multi-consumer queues.

Better performing libraries:
https://github.com/rigtorp/SPSCQueue
https://github.com/cameron314/concurrentqueue
https://github.com/max0x7ba/atomic_queue

https://code.dlang.org/packages/liblfdsd

liblfds for D, from the portable, license-free, lock-free data structure C library (https://www.liblfds.org/).

December 31, 2023

On Sunday, 31 December 2023 at 04:33:44 UTC, mw wrote:

>

On Saturday, 30 December 2023 at 18:08:06 UTC, zoujiaqing wrote:

>

C++ boost now has a lock-free queue library:
https://github.com/boostorg/lockfree/tree/develop/include/boost/lockfree

It includes single-producer, single-consumer and multi-producer, multi-consumer queues.

Better performing libraries:
https://github.com/rigtorp/SPSCQueue
https://github.com/cameron314/concurrentqueue
https://github.com/max0x7ba/atomic_queue

https://code.dlang.org/packages/liblfdsd

liblfds for D, from the portable, license-free, lock-free data structure C library (https://www.liblfds.org/).

It does not support the ARM64 architecture.

December 31, 2023

https://code.dlang.org/packages/rust_interop_d

Wrap a Rust implementation then.

January 16, 2024

On Sunday, 31 December 2023 at 19:06:40 UTC, mw wrote:

>

https://code.dlang.org/packages/rust_interop_d

Wrap a Rust implementation then.

What about the lock-free library?

https://github.com/MartinNowak/lock-free

January 16, 2024

On Tuesday, 16 January 2024 at 01:35:43 UTC, RJ Nowling wrote:

>

On Sunday, 31 December 2023 at 19:06:40 UTC, mw wrote:

>

https://code.dlang.org/packages/rust_interop_d

Wrap a Rust implementation then.

What about the lock-free library?

https://github.com/MartinNowak/lock-free

It's not production quality library:

https://github.com/MartinNowak/lock-free/issues/4

January 16, 2024

On Tuesday, 16 January 2024 at 01:35:43 UTC, RJ Nowling wrote:

>

On Sunday, 31 December 2023 at 19:06:40 UTC, mw wrote:

>

https://code.dlang.org/packages/rust_interop_d

Wrap a Rust implementation then.

What about the lock-free library?

https://github.com/MartinNowak/lock-free

We really need lock-free container.
This is about how to implement a highly concurrent server.