Need help with cpp-ipc?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

mutouyun
655 Stars 162 Forks Other 534 Commits 14 Opened issues

Description

C++ IPC Library: A high-performance inter-process communication using shared memory on Linux/Windows.

Services available

!
?

Need anything else?

Contributors list

# 62,731
C++
Linux
shared-...
Windows
445 commits
# 175,516
Neovim
vim-con...
Common ...
spacevi...
1 commit

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

MIT licensed Build Status Build status Vcpkg package

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

  • 推荐支持C++17的编译器(msvc-2017/gcc-7/clang-4)
  • 除STL外,无其他依赖
  • 无锁(lock-free)或轻量级spin-lock
  • 底层数据结构为循环数组(circular array)
  • ipc::route
    支持单写多读,
    ipc::channel
    支持多写多读【注意:目前同一条通道最多支持32个receiver,sender无限制
  • 默认采用广播模式收发数据,支持用户任意选择读写方案
  • 不会长时间忙等(重试一定次数后会使用信号量进行等待),支持超时
  • 支持Vcpkg方式安装,如
    vcpkg install cpp-ipc

Usage

See: Wiki

Performance

Environment

Value
Device Lenovo ThinkPad T450
CPU Intel® Core™ i5-4300U @ 2.5 GHz
RAM 16 GB
OS Windows 7 Ultimate x64
Compiler MSVC 2017 15.9.4

UT & benchmark test function: test
Performance data: performance.xlsx

Reference

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.