2019-01-05 13:25:17 +08:00
build fix compiling error; preparing to refactor 2019-01-04 22:11:19 +08:00
include std::atomic<T> may not have value_type 2019-01-04 22:26:40 +08:00
src remove channel::send_for 2019-01-02 16:37:41 +08:00
test fix compiling error; preparing to refactor 2019-01-04 22:11:19 +08:00
.gitignore first commit for shm. 2018-11-20 11:27:39 +08:00
.travis.yml Merge branch 'master' of https://github.com/mutouyun/cpp-ipc 2019-01-01 16:35:15 +08:00
LICENSE Update LICENSE 2018-12-27 17:01:44 +08:00
performence.xlsx update performence data; add implementation of pool_alloc::clear 2019-01-02 11:58:55 +08:00
README.md Update README.md 2019-01-05 13:25:17 +08:00

cpp-ipc - C++ IPC Library

MIT licensed Build Status

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

  • 需要支持C++17的编译器msvc-2017/gcc-7/clang-4
  • 除STL外无其他依赖
  • 无锁lock-free或轻量级shared-spin-lockipc::channel::connect/disconnect
  • 底层数据结构为循环数组circular array
  • ipc::route支持单生产多消费,ipc::channel支持多生产多消费

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: performence.xlsx

Reference