managed_mapped_file 是不是能够因分配而增加文件大小?

Posted

技术标签:

【中文标题】managed_mapped_file 是不是能够因分配而增加文件大小?【英文标题】:Is managed_mapped_file able to increase file size due to allocation?managed_mapped_file 是否能够因分配而增加文件大小? 【发布时间】:2014-08-07 16:18:10 【问题描述】:

我想使用boost::interprocess::managed_mapped_file 处理内存映射文件。但是在文档中找不到有关它分配内存的详细信息。

即我想知道allocate() 是否因boost::interprocess::bad_alloc 错误而失败,如果在创建boost::interprocess::managed_mapped_file 对象(实际上是文件的大小)期间指定的所有内存都已分配,或者没有足够大的可用内存序列或者它只是增加了文件的大小。

如果失败,我怎样才能让它增加文件的大小(比如增加两倍)?

【问题讨论】:

【参考方案1】:

您可以增长内存映射文件,但不能在其他进程已映射时增长。所有客户端通常都必须重新映射文​​件。

略相关:boost::interprocess::managed_shared_memory: Grow(): Memory Reused?

【讨论】:

以上是关于managed_mapped_file 是不是能够因分配而增加文件大小?的主要内容,如果未能解决你的问题,请参考以下文章

boost::interprocess::managed_mapped_file 如何包含弹性向量?

circular_buffer 和 managed_mapped_file 分段错误

Boost 进程间分配器 - 管理文件大小

tableau 是不是能够动态访问数据?

PyCharm - 社区版是不是能够突出显示 php?

预测用户是不是能够解决问题