Re: wallet.datの自動バックアップ

Quote from: satoshi on August 27, 2010, 02:54:07 AM

Windowsにmmap(2)があるとは思えない。自作のものを作ってテストするよりも、既存のファイルコピー関数を呼び出す方が良い。

Quote from: nelisky on August 27, 2010, 01:21:09 AM

Quote from: satoshi on August 27, 2010, 01:13:42 AM

メモリに読み込んで書き出すと、メモリが逼迫している状況では失敗する可能性がある。

copyfile(const char* from, const char* to) や copyfile(path from, path to) のようなものを探している。できればBoostにあるもの。見つけてくれれば、実装に取りかかる可能性が高くなる。

Quote from: nelisky on August 26, 2010, 01:21:57 AM

ファイルコピーについては、boost依存を増やす必要があるだろうか?私としては依存の少ないコアライブラリが欲しい。

JSONやwxWidgetsの依存を置き換える十数個の機能のためにBoostは必須だ。Boostは良い、ポータブルなものだ。敬遠すべきではない。

では、私が言及したスニペットのシンプルな標準fstreamの使用の何が問題なのか?シンプルが一番だと思う Smiley

しかしboost::filesystemの機能を既に使っているなら、そこからcopy_fileを使える。他に何かのために既に必要でなければ、少々大げさだと思うだけだ。

ありがとう。どこかにあるだろうと思っていた。

すでに十数箇所でboost::filesystemを使っている。新たに追加される依存関係ではない。そうでなければ各OSごとに#ifdefを用意してあらゆる場所でテストしなければならないような、多くのポータブルなものを提供してくれる。

Windowsバージョンのmmapは返信したメッセージで言及した:CreateFileMapping

以前のメッセージで、boostからの使い方を述べた:Boost::Iostreamsには既にmapped_file Sourceがある。