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

ย 

History

19 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

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