版权所有 © 2005-2024 Ion Gaztanaga
根据 Boost 软件许可证版本 1.0 发布。(参见随附文件 LICENSE_1_0.txt 或在 https://boost.ac.cn/LICENSE_1_0.txt 复制)
目录
Boost.Interprocess 简化了常用进程间通信和同步机制的使用,并提供了广泛的选项。
Boost.Interprocess 还提供了更高级的进程间机制,用于动态分配共享内存或内存映射文件的部分(通常是分配固定大小内存段的部分)。使用这些机制,Boost.Interprocess 提供了有用的工具来在共享内存和内存映射文件中构造 C++ 对象,包括类似 STL 的容器。
无需编译 Boost.Interprocess,因为它是一个纯头文件库。只需将您的 Boost 头文件目录添加到编译器的包含路径中即可。
Boost.Interprocess 依赖于 Boost.DateTime,这需要单独编译。然而,Boost.Interprocess 使用的子集不需要任何单独的编译,因此用户可以定义 BOOST_DATE_TIME_NO_LIB 以避免 Boost 尝试自动链接 Boost.DateTime。
在 POSIX 系统上,Boost.Interprocess 使用 pthread 系统调用来实现互斥量、条件变量等类。在某些操作系统上,这些 POSIX 调用实现在单独的库中,这些库不会被编译器自动链接。例如,在某些 Linux 系统上,POSIX pthread 函数实现于 librt.a 库中,因此在链接使用 Boost.Interprocess 的可执行文件或共享库时,您可能需要添加该库。如果您遇到与这些 pthread 函数相关的链接错误,请查阅您系统的文档,了解哪个库实现了它们。
Boost.Interprocess 已在以下编译器/平台上进行了测试:
![]() |
警告 |
|---|---|
GCC < 4.3 和 MSVC < 9.0 已弃用,将在下一个版本中移除。 |