我已經創建了一個Boost共享內存,用於共享向量。從Boost InterProcess共享內存中檢索共享向量
共享已完成。
但是,我不明白向量如何被推入共享內存。
我做了push_back
到寫入過程的共享內存。因此,這些載體正在被按入堆棧push
以LIFO順序進入共享內存?現在,這裏
managed_shared_nmemory segment (open_only, "Shared_mem_name");
Vector = segment.find<VECTOR_TYPE>("Vector_name").first;
if (Vector != NULL)
{
//CODDE
}
,我在讀的載體:
其他應用程序,讀卡器,檢索矢量在下面的流行時尚。推入最後一個(最新的)?如果我正在閱讀它,這是否意味着矢量彈出?即在讀取後它是否仍然存在於共享內存中,如果是這樣,共享內存會在一段時間後溢出,我將如何阻止它?我沒有看到有關它的文檔中的任何內容......
檢查是否有適當的進程同步**和**正在'VECTOR_TYPE'中使用IPC分配器。我建議你從文檔中的示例開始。 – sehe