Skip to content
@DelegateMQ

DelegateMQ

C++ delegates, signals, and messaging across threads and networks.

License MITUbuntuWindowsClangC++17Header OnlyPlatforms

DelegateMQ

DelegateMQ is a C++17 header-only messaging library for invoking any callable — function, method, or lambda — synchronously, asynchronously, or remotely across threads, processes, and processors.

What It Does

FeatureDescription
Synchronous DelegatesType-safe callable wrappers — free functions, members, lambdas
Asynchronous DelegatesFire-and-forget or blocking dispatch to any worker thread
Signal & SlotThread-safe multicast with RAII ScopedConnection handles
DataBusTopic-based publish/subscribe across threads or network nodes
Remote DelegatesInter-process and inter-processor messaging over any transport

Repositories

RepositoryDescription
DelegateMQCore library — delegates, signals, DataBus, diagnostic tools
IntegrationTestFrameworkMulti-threaded C++ integration test framework using DelegateMQ
active-fsmActive-object C++ finite state machine with async dispatch and pub/sub signals
Async-SQLiteAsynchronous thread-safe SQLite wrapper using DelegateMQ
Async-DuckDBAsynchronous thread-safe DuckDB wrapper using DelegateMQ
Async-HTTPAsynchronous thread-safe HTTP client wrapper using DelegateMQ

Quick Example

#include"DelegateMQ.h"// Synchronousauto d = MakeDelegate(&MyClass::Func, &obj);
d(arg);
// Async — dispatched to workerThreadauto d = MakeDelegate(&MyClass::Func, &obj, workerThread);
d(arg);
// Signal & Slot
Signal<void(int)> signal;
auto conn = signal.Connect(MakeDelegate(&MyClass::OnEvent, &obj));
signal(42); // invokes all connected slots

Platforms

Works on Windows, Linux, and a wide range of embedded targets including FreeRTOS, ThreadX, Zephyr, CMSIS-RTOS2, and bare-metal ARM. Transport backends include ZeroMQ, NNG, MQTT, TCP, UDP, serial, and more.

Get Started

git clone https://github.com/DelegateMQ/DelegateMQ.git

See DelegateMQ for full details.

Pinned Loading

  1. DelegateMQDelegateMQPublic

    C++ delegates, signals, and messaging across threads and networks.

    C++ 25 2

Repositories

Showing 7 of 7 repositories

Top languages

Loading…

Most used topics

Loading…