2011-10-04 83 views
0

當您在使用共享內存的C for Unix中編寫數據供應商應用程序時,是否僅當服務器退出或完成共享內存更新時才分離共享內存?在unix中使用共享內存時

+0

服務器退出時,我會這樣做。當然,只是恕我直言。 –

+0

如果服務器分離,客戶端仍然可以訪問共享內存? – zacharoni16

回答

0

AFAIK,保持附着不會打擾。

但是由於附件追蹤附加進程的數量,如果該計數大於0,那麼在該計數回到0之前(換句話說,當所有進程都分離時),您將不被允許銷燬shm, 。 如果您附加了一個主流程,我不確定您是否能夠從shm的外部「管理」流程中銷燬它。

在我的個人經驗中,我不會在寫入操作後分離SHM,只能在流程退出時分離。