2011-10-01 78 views
2

綜觀RandomAccessFile因爲它說的模式構造「RWS」 The file is opened for reading and writing. Every change of the file's content or metadata must be written synchronously to the target device.RandomAccessFile是否寫入異步?

這是否意味着模式「RW」是異步的?如果我需要知道文件寫入何時完成,是否需要包含's'?

回答

5

被寫入的RandomAccessFile異步?

同步/異步區別是指在write調用返回之前,數據/元數據已安全地保存到磁盤。如果沒有同步模式的保證,很可能是你寫的數據可能仍然只是在內存中的write系統調用完成點。 (除非操作系統崩潰或機模具由於電源故障或一些這樣的數據將被寫入到磁盤最終...通常在幾秒鐘內...。)

同步模式輸出爲(明顯)慢於異步模式輸出。

這是否意味着模式'rw'是異步的?

是的,這就是,在上面的感覺。

如果我需要知道文件寫入完成時是否需要包含's'?

是的,如果用「complete」表示「寫入光盤」。

3

,使用多線程時是RandomAccessFile和java.io類如此。模式「RW」提供了異步讀/寫,但你可以使用一個synchronous模式,讀取和寫入操作。