2017-07-20 29 views
1

私の環境はWindows 2008/2012 C++ VS2013です。私は暖かい再起動を続けるためにstlマップが必要です。 boost:interprocessを使用するのは、再起動するアプリケーションがサーバーサイドでマップを更新し、別のクライアントアプリケーションが同じ共有メモリセグメントに接続され、サーバーアプリケーションがクラッシュした場合に「生きている」ようにするソリューションです/何らかの理由で再起動しますか?boost ::プロセス間共有メモリ

答えて

2

はい、これを行うことができます。

interprocess :: shared_ptr <>を使用して、参照カウントを取得することができます。

マップされたメモリは魔法のようにトランザクション的ではないので、ハードエラーが発生した場合、破損する可能性があります。堅牢な状態の永続性が必要な場合は、適切なデータベース永続性プロバイダを使用してください。

+0

私がしようとしていることの例を提供することは可能でしょうか?また、適切なデータベース永続性プロバイダの推奨事項はありますか? –

+0

Sqliteは最も簡単に展開できます。さもなければ、Postgres、Mysql、SQLServer、ある種の[no-SQLデータベース](http://basho.com/resources/nosql-databases/)(警告が出るかもしれませんが、箱から出して) – sehe

関連する問題