2024-09-01 19:05:02 +08:00
.github/workflows Unified CI step names 2024-06-02 18:22:27 +08:00
benchmark Use std::ignore to fix unused variable warnings 2024-05-19 18:49:50 +08:00
include refactor: horrible_cast implementation 2024-09-01 15:32:23 +08:00
src Testing with threads instead of processes under Windows. 2024-09-01 19:05:02 +08:00
test Testing with threads instead of processes under Windows. 2024-09-01 19:05:02 +08:00
.gitignore Update .gitignore 2023-10-28 18:58:16 +08:00
CMakeLists.txt Try adding test coverage check 2024-06-02 18:11:25 +08:00
LICENSE 调整目录结构,隔离include路径,修正tls在win下的问题 2020-09-13 17:29:14 +08:00
README.md Testing with threads instead of processes under Windows. 2024-09-01 19:05:02 +08:00

cpp-ipc(libipc) - C++ IPC Library

MIT licensed Build Status CodeCov Vcpkg package

A high-performance inter-process communication using shared memory on Linux/Windows.
使用共享内存的跨平台Linux/Windowsx86/x64/ARM高性能IPC通讯库。


  • 重构中……
  • 重构代码结构:
    • imp - 基础库
    • pmr - 内存管理
    • concur - 并发
    • sock - 简单的 socket 抽象
    • te - 类型擦除
  • IPC实现基本组件
    • 共享内存(需要作为后续组件的基础)
    • 原子锁
    • 互斥量
    • 条件变量
    • 信号量
    • 事件(支持 I/O 多路复用)
  • IPC实现主体功能
    • 基于共享内存的变长循环内存池(作为大对象的底层存储)
    • 节点间的相互发现机制(基于 sock避免连接
    • 实现单对单、单对多、多对多收发模型
  • IPCAPI/性能优化
    • 支持零拷贝发送
    • 支持多路读取等待
    • 优化无锁队列实现