nowfound

Life & fun · August 6, 2021

C++ Multi-channel/-process/-thread, allocation & communication library

Inter-process C++ communication library to enable allocation managed between processes/threads and send/receive of allocated regions between producers/consumer processes or threads using this IPC buffer. (and yes it implements an M:N ring buffer too) - Usage · RaftLib/ipc Wiki

C++ Multi-channel/-process/-thread, allocation & communication library launched on August 6, 2021 with 14 votes, #1,224 of 2,953 launches that month and more than 75% of that year's launches. The site was still online in September 2026, 5 years on.

In plain words

This C++ library provides tools for multi-channel, multi-process, and multi-thread operations with built-in allocation and communication capabilities. It is designed for developers building concurrent applications that require efficient inter-process or inter-thread messaging. The library offers structured support for managing multiple communication channels simultaneously, making it suitable for complex systems that need reliable data exchange across different execution contexts.

written from the facts on this page · September 2026

From the sources

This is a sketch on how to use the buffer. Eventually we'll finish the full documentation, until then, this serves as a high-level on how to use this piece of software. The test cases and README documentation also serve as points of reference for syntax and behavior. where the programmer creates a buffer object that has the name "thehandle". Each thread should have it's own TLS , these are opened for each thread within each process. Once channels are created, memory can be allocated in each process. This memory is allocated dynamically from the shared memory heap. Memory can be allocated in any order from any channel. A return of nullptr indicates that the buffer object is out of memory.…from github.com

Does a similar job

all alternatives →
  • Comprehensive inter-process communication (IPC) toolkit in modern C++2024 · github.com · ▲88

    If you work in C++, and you would like 2+ programs to share data structures (and/or native I/O handles a.k.a. FDs) among each other, there is a good chance Flow-IPC - will make it considerably less annoying to code than typical approaches; and - may massively reduce the latency involved. Those sharing Cap'n Proto-encoded data may have particular interest. Cap'n Proto (https://capnproto.org) is fantastic at its core task - in-place serialization with zero-copy - and we wanted to make the IPC (inter-process communication) involving capnp-serialized messages be zero-copy,…

  • Iceoryx2 – Fast IPC Library for Rust, C++, and C2024 · ekxide.io · ▲122

    Hello everyone, Today we released iceoryx2 v0.4! iceoryx2 is a service-based inter-process communication (IPC) library designed to make communication between processes as fast as possible - like Unix domain sockets or message queues, but orders of magnitude faster and easier to use. It also comes with advanced features such as circular buffers, history, event notifications, publish-subscribe messaging, and a decentralized architecture with no need for a broker. For example, if you're working in robotics and need to process frames from a camera across multiple processes, iceoryx2 makes it…

  • RaftLib – Easy, productive parallel programming in C++2016 · raftlib.io · ▲62

    Simple, easy to use stream computation library for C++.

  • Chan – pure C implementation of Go channels2014 · github.com · ▲150

    Pure C implementation of Go channels. Contribute to tylertreat/chan development by creating an account on GitHub.

  • A pure C89 implementation of Go channels, with blocking selects2023 · github.com · ▲271

    A pure C (-std=c89) implementation of Go channels, including blocking and non-blocking selects. - GitHub - rochus-keller/CspChan: A pure C (-std=c89) implementation of Go channels, including blocking and non-blocking selects.

  • Neco – Coroutine Library for C2024 · github.com · ▲145

    Concurrency library for C (coroutines). Contribute to tidwall/neco development by creating an account on GitHub.

More life & fun this month

the category →

Source: Show HN post ↗

Launched alongside, August 2021

the whole month →
  • II

    Hey all My name is Sindre, and I am the CTO of Scrimba (YC S20). For the last 7 years, I have written all my web apps in a full-stack programming language called Imba. It compiles to JavaScript and its main goal is to make web developers more productive. I just launched a major overhaul of Imba, so I wanted to share it here on HN, in case anyone are interested in learning more about it. It is very opinionated, so some of you might not like it, but I would love to hear anyones feedback regardless. Constructive criticism appreciated! The backstory: Imba initially started in 2012 as an effort…

    Life & fun · 2021

  • WB

    Hello HN, Over the last year we've been building ente[1], a privacy-friendly, easy-to-use alternative to Google Photos. We've so far built Android[2][3], iOS[4], web[5] apps that encrypt your files and back them up in the background. You can access these across your devices, and share them with other ente users, end-to-end encrypted. You can also use our electron app[6] to maintain a local copy of your backed up files. We've built a fault-tolerant data replication layer that replicates your data to two different storage providers in the EU. We will be providing additional replicas as an…

    Life & fun · 2021

  • SigmaOS▲1,026

    The browser that makes YOU fast

    Work · 2021 · sigmaos.com

  • OpenAI's smartest and most intuitive to use model yet

    AI · 2021 · openai.com

  • Publication dedicated to bootstrapping founders

    Growth · 2021 · bootstrappers.com

  • Poet.so▲767

    Capture and share Twitter posts as beautiful images

    Growth · 2021 · poet.so