Skip to content

πŸ”‚ mulle-linkedlist a wait and lock-free linked list

License

Notifications You must be signed in to change notification settings

mulle-concurrent/mulle-linkedlist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2bfa6c3 Β· Jan 23, 2025

History

23 Commits
Jan 23, 2025
Dec 11, 2024
Dec 11, 2024
Jan 13, 2024
Oct 20, 2023
Dec 11, 2024
Dec 11, 2024
Jan 11, 2024
Jan 11, 2024
Dec 11, 2024
Oct 20, 2023
Nov 21, 2024
Dec 11, 2024
Dec 11, 2024
Jan 13, 2024

Repository files navigation

mulle-linkedlist

πŸ”‚ mulle-linkedlist a wait and lock-free linked list

The mulle-concurrent-linkedlist is a barebones lock- and wait-free linked list, that is used by mulle-aba and the mulle-objc-runtime. A single-threaded variant mulle-linkedlist is also supplied.

Release Version Release Notes
Mulle kybernetiK tag Build Status RELEASENOTES

API

Data Structure Description
mulle-concurrent-linkedlist A wait and lock free linked list

You are here

Overview

Add

This project is a component of the mulle-core library. As such you usually will not add or install it individually, unless you specifically do not want to link against mulle-core.

Add as an individual component

Use mulle-sde to add mulle-linkedlist to your project:

mulle-sde add github:mulle-concurrent/mulle-linkedlist

To only add the sources of mulle-linkedlist with dependency sources use clib:

clib install --out src/mulle-concurrent mulle-concurrent/mulle-linkedlist

Add -isystem src/mulle-concurrent to your CFLAGS and compile all the sources that were downloaded with your project.

Install

Use mulle-sde to build and install mulle-linkedlist and all dependencies:

mulle-sde install --prefix /usr/local \
   https://github.com/mulle-concurrent/mulle-linkedlist/archive/latest.tar.gz

Legacy Installation

Install the requirements:

Requirements Description
mulle-c11 πŸ”€ Cross-platform C compiler glue (and some cpp conveniences)
mulle-allocator πŸ”„ Flexible C memory allocation scheme
mulle-thread πŸ”  Cross-platform thread/mutex/tss/atomic operations in C

Download the latest tar or zip archive and unpack it.

Install mulle-linkedlist into /usr/local with cmake:

cmake -B build \
      -DCMAKE_INSTALL_PREFIX=/usr/local \
      -DCMAKE_PREFIX_PATH=/usr/local \
      -DCMAKE_BUILD_TYPE=Release &&
cmake --build build --config Release &&
cmake --install build --config Release

Author

Nat! for Mulle kybernetiK

About

πŸ”‚ mulle-linkedlist a wait and lock-free linked list

Resources

License

Stars

Watchers

Forks

Packages

No packages published