Getting Started
FastQueue is a production-ready, high-performance Job System & Thread Pool Library written in C (C99 and later) with full C++ compatibility.
Features
- Thread pool with work stealing
- Job scheduler with priority support
- Thread-safe MPMC queues
- Futures and promises
- Custom allocators
- Cross-platform (Linux, Windows, macOS)
- Zero external dependencies
Requirements
- C compiler with C99 or later support (GCC 4.8+, Clang 3.0+, MSVC 2015+)
- CMake 3.20+
- POSIX threads (Linux/macOS) or Win32 threads (Windows)
Quick Install
From source
bash
git clone https://github.com/muhammad-fiaz/FastQueue.git
cd FastQueue
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
cmake --install buildAs a subdirectory
cmake
add_subdirectory(FastQueue)
target_link_libraries(your_target PRIVATE FastQueue::fastqueue)With FetchContent
cmake
include(FetchContent)
FetchContent_Declare(
FastQueue
GIT_REPOSITORY https://github.com/muhammad-fiaz/FastQueue.git
GIT_TAG main
)
FetchContent_MakeAvailable(FastQueue)
target_link_libraries(your_target PRIVATE FastQueue::fastqueue)With xmake
bash
xmake repo add fastqueue https://github.com/muhammad-fiaz/FastQueue
xmake require fastqueueWith Conan
ini
[requires]
fastqueue/0.1.0With vcpkg
bash
vcpkg install fastqueueNext Steps
- Quick Start - Write your first program
- Thread Pool - Learn about the thread pool
- API Reference - Full API docs
