В системе Unix я, вероятно, использовал бы буфер с общей памятью (см. shm_open()
), или, если недоступен файл с отображением в памяти с флагом MAP_SHARED, см. Различия в ОС хотя http://en.wikipedia.org/wiki/Mmap
Если и shm_open
, и mmap
недоступны, вы все равно можете использовать файл на диске (в некоторой степени), вам нужно позаботиться о правильной блокировке, я бы отправил сигнал разблокировки на следующий процесс и, возможно, поиск обновленной части файла, затем этот процесс снова блокирует файл, ищет интересную часть и продолжает работу как обычно (обновляет / удаляет / и т. д.).
В любом случае вы можете свободно создавать макет хеш-таблицы или что угодно, например, иметь пары ключ / поиск фиксированной ширины. Таким образом, у вас будет быстрый доступ к ключам вашей хеш-таблицы, и при необходимости вы будете искать часть данных, а затем скопировать / удалить / изменить / и т. Д.
В идеале этот файл, конечно, должен быть на оперативном диске.