circular_buffer
Boostライブラリと Interprocess ライブラリを使用して、共有メモリに循環バッファを作成しようとしています。問題なく共有メモリにベクトルを作成するために、インタープロセスのドキュメントに記載されている例をコンパイルして実行しました。ただし、Boost circle_buffer を次のように使用するように変更すると、次のようになります。
int main(int argc, char *argv[])
{
managed_shared_memory segment(create_only, "MySharedMemory", 65536);
const ShmemAllocator alloc_inst (segment.get_segment_manager());
MyCircBuffer *myCircBuf = segment.construct<MyCircBuffer>("MyCircBuffer")(alloc_inst);
return 0;
}
コンパイル エラーが発生します (原因:) segment.construct()
。私が間違っていることは何ですか?circular_buffer
にリストされているコンテナの 1 つでないため/boost/interprocess/containers
、つまり、Interprocess と互換性がないためですか?
ありがとう、
ハ