Merge 0d53a3cdb1e6be1ee8a3da93702b767dc2b04fb5 into c5302d00ab332a4a6f0dccfedba9601eda1d5700

This commit is contained in:
木头云 2025-11-29 18:56:42 +08:00 committed by GitHub
commit 1211ff8a40
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 10 additions and 8 deletions

View File

@ -5,7 +5,7 @@
[![Build status](https://ci.appveyor.com/api/projects/status/github/mutouyun/cpp-ipc?branch=master&svg=true)](https://ci.appveyor.com/project/mutouyun/cpp-ipc) [![Build status](https://ci.appveyor.com/api/projects/status/github/mutouyun/cpp-ipc?branch=master&svg=true)](https://ci.appveyor.com/project/mutouyun/cpp-ipc)
[![Vcpkg package](https://img.shields.io/badge/Vcpkg-package-blueviolet)](https://github.com/microsoft/vcpkg/tree/master/ports/cpp-ipc) [![Vcpkg package](https://img.shields.io/badge/Vcpkg-package-blueviolet)](https://github.com/microsoft/vcpkg/tree/master/ports/cpp-ipc)
## A high-performance inter-process communication library using shared memory on Linux/Windows. ## A high-performance inter-process communication library using shared memory on Linux/Windows/FreeBSD.
* Compilers with C++17 support are recommended (msvc-2017/gcc-7/clang-4) * Compilers with C++17 support are recommended (msvc-2017/gcc-7/clang-4)
* No other dependencies except STL. * No other dependencies except STL.
@ -44,7 +44,7 @@ Performance data: [performance.xlsx](performance.xlsx)
------ ------
## 使用共享内存的跨平台Linux/Windowsx86/x64/ARM高性能IPC通讯库 ## 使用共享内存的跨平台Linux/Windows/FreeBSDx86/x64/ARM高性能IPC通讯库
* 推荐支持C++17的编译器msvc-2017/gcc-7/clang-4 * 推荐支持C++17的编译器msvc-2017/gcc-7/clang-4
* 除STL外无其他依赖 * 除STL外无其他依赖

View File

@ -9,6 +9,8 @@
# define IPC_OS_WINDOWS_ # define IPC_OS_WINDOWS_
#elif defined(__linux__) || defined(__linux) #elif defined(__linux__) || defined(__linux)
# define IPC_OS_LINUX_ # define IPC_OS_LINUX_
#elif defined(__FreeBSD__)
# define IPC_OS_FREEBSD_
#elif defined(__QNX__) #elif defined(__QNX__)
# define IPC_OS_QNX_ # define IPC_OS_QNX_
#elif defined(__APPLE__) #elif defined(__APPLE__)

View File

@ -7,7 +7,7 @@
#include "libipc/platform/linux/a0/strconv.c" #include "libipc/platform/linux/a0/strconv.c"
#include "libipc/platform/linux/a0/tid.c" #include "libipc/platform/linux/a0/tid.c"
#include "libipc/platform/linux/a0/time.c" #include "libipc/platform/linux/a0/time.c"
#elif defined(IPC_OS_QNX_) #elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
#else/*IPC_OS*/ #else/*IPC_OS*/
# error "Unsupported platform." # error "Unsupported platform."
#endif #endif

View File

@ -2,7 +2,7 @@
#include "libipc/platform/detail.h" #include "libipc/platform/detail.h"
#if defined(IPC_OS_WINDOWS_) #if defined(IPC_OS_WINDOWS_)
#include "libipc/platform/win/shm_win.cpp" #include "libipc/platform/win/shm_win.cpp"
#elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_) #elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
#include "libipc/platform/posix/shm_posix.cpp" #include "libipc/platform/posix/shm_posix.cpp"
#else/*IPC_OS*/ #else/*IPC_OS*/
# error "Unsupported platform." # error "Unsupported platform."

View File

@ -9,7 +9,7 @@
#include "libipc/platform/win/condition.h" #include "libipc/platform/win/condition.h"
#elif defined(IPC_OS_LINUX_) #elif defined(IPC_OS_LINUX_)
#include "libipc/platform/linux/condition.h" #include "libipc/platform/linux/condition.h"
#elif defined(IPC_OS_QNX_) #elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
#include "libipc/platform/posix/condition.h" #include "libipc/platform/posix/condition.h"
#else/*IPC_OS*/ #else/*IPC_OS*/
# error "Unsupported platform." # error "Unsupported platform."

View File

@ -9,7 +9,7 @@
#include "libipc/platform/win/mutex.h" #include "libipc/platform/win/mutex.h"
#elif defined(IPC_OS_LINUX_) #elif defined(IPC_OS_LINUX_)
#include "libipc/platform/linux/mutex.h" #include "libipc/platform/linux/mutex.h"
#elif defined(IPC_OS_QNX_) #elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
#include "libipc/platform/posix/mutex.h" #include "libipc/platform/posix/mutex.h"
#else/*IPC_OS*/ #else/*IPC_OS*/
# error "Unsupported platform." # error "Unsupported platform."

View File

@ -7,7 +7,7 @@
#include "libipc/platform/detail.h" #include "libipc/platform/detail.h"
#if defined(IPC_OS_WINDOWS_) #if defined(IPC_OS_WINDOWS_)
#include "libipc/platform/win/semaphore.h" #include "libipc/platform/win/semaphore.h"
#elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_) #elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
#include "libipc/platform/posix/semaphore_impl.h" #include "libipc/platform/posix/semaphore_impl.h"
#else/*IPC_OS*/ #else/*IPC_OS*/
# error "Unsupported platform." # error "Unsupported platform."

View File

@ -5,7 +5,7 @@
#include "libipc/platform/win/mutex.h" #include "libipc/platform/win/mutex.h"
#elif defined(IPC_OS_LINUX_) #elif defined(IPC_OS_LINUX_)
#include "libipc/platform/linux/mutex.h" #include "libipc/platform/linux/mutex.h"
#elif defined(IPC_OS_QNX_) #elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
#include "libipc/platform/posix/mutex.h" #include "libipc/platform/posix/mutex.h"
#else/*IPC_OS*/ #else/*IPC_OS*/
# error "Unsupported platform." # error "Unsupported platform."