QT 共享內存的使用總結

首先,不得不說,QT的共享內存,使用起來還是很方便的。

參考博文

  https://blog.csdn.net/gdutlyp/article/details/50468677

https://blog.csdn.net/Sakuya__/article/details/89519412

使用總結

1、第一個使用此關鍵字 內存的 進程,需要create 具體的內存大小,其他進程纔可以attach 成功

QSharedMemory g_shareMemory;
g_shareMemory.setKey("520");
int maxSize = 1000000;
g_shareMemory.create(maxSize);

2、其它進程關聯此 共享內存後,可以讀寫操作,但注意寫入的數據size要小於共享內存的size

FShareMemory.setKey("520");
if (!FShareMemory.attach())
{
	return;
}
std::string str = “testhaha”;
if (str.size()>FShareMemory.size())
{
	return;
}
memcpy((char*)FShareMemory.data(), str.c_str(), str.size());

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章