Хранение постоянных данных в памяти

Я собираюсь разработать службу Windows на C #. Эта служба должна отслеживать события в системе и время от времени записывать некоторые данные в файлы. Эти текущие события формируют определенное состояние, поэтому я буду хранить это состояние в памяти и обновлять его по мере поступления событий. Я не хочу слишком усложнять вещи, поэтому я не хочу, чтобы состояние было постоянным на диске, но мне интересно, могу ли я каким-то образом сделать его постоянным в памяти, чтобы в случае сбоя службы (и автоматического перезапуска Windows) она могла продолжить работу с того места, где она была оставлена ​​(возможно, потеря некоторых событий, не имеет большого значения).

Я думал о создании «общей» области памяти, чтобы позволить Windows управлять ею и использовать ее только в службе, но я не уверен, что объект сохранится после завершения службы.

Есть идеи?

РЕДАКТИРОВАТЬ : Я не ищу излишнего решения. Данные в некоторой степени важны, поэтому я хотел бы, чтобы они ожидали в памяти, пока служба не будет перезапущена, но данные не слишком важны. Это скорее полезная функция, если я могу легко сохранять данные, не работая с файлами, внешними сторонними процессами и т. Д. Моим идеальным решением была бы простая встроенная функция (в формате. NET или в Windows), которые обеспечат мне некоторую сохраняемость в памяти, просто для восстановления после сбоя.

7
задан Eldad Mor 16 September 2010 в 08:57
поделиться