2006年5月4日 (木曜日) 23:57:38 # Life SysV IPC shmの活用. shmget/shmatしたあとに,shmctlで,IPC_RMIDを指定してあげると, 利用している全プロセスがshmdtでデタッチするまでそのメモリ領域を確保し続けてくれる. ipcs で表示させると,statusがdestという状態になっているのがどうやらそうのようだ. LinuxのPOSIX shmには拡張があり,dest状態になっていてもアタッチはできて, 最終的にだれも使わなくなった時点で共有メモリセグメントが削除される,という仕様になっている. SysV IPC 共有メモリの不便な点としては,プロセスが全部死んでも共有メモリが確保されたまま残ってしまう ということだが,Linuxのこの拡張を利用すれば, shmget/shmatで確保して即削除指定することによって 誰も使わなくな