3

次のようなコードスニペットがあります。

Dim fstream = new filestream(some file here)
dim bwriter = new binarywriter(fstream)
while not end of file
    read from source file
    bwriter.write()
    bwriter.flush()
end while

私が持っている質問は次のとおりです。bwriter.flush()を呼び出すと、fstreamオブジェクトもフラッシュされますか?または、次の例に示すように、fstream.flush()を明示的に呼び出す必要があります。

while not end of file
    read from source file
    bwriter.write()
    bwriter.flush()
    fstream.flush()
end while

何人かの人々は、データがディスク(またはデバイス)に書き込まれることを確認するために、fstream.flush()を明示的に呼び出す必要があることを提案しました。ただし、私のテストでは、bwriterオブジェクトでflush()メソッドを呼び出すとすぐに、データがディスクに書き込まれることが示されています。

誰かがこれを確認できますか?

4

1 に答える 1

4

Reflectorによると、BinaryWriter.Flushは、基になるストリームのFlushメソッドを呼び出します。

于 2010-06-01T16:48:52.427 に答える