2010-09-08 36 views
0

我正在將一個大的3d數組序列化爲磁盤。原始數據大約爲50MB,GZiped輸出爲 (以Kb爲單位),但操作大約需要5秒。優化它的時間。我想天氣它會更好地使用映射讀/寫,因爲我已經看到它具有better performance比平常的流寫作。但不知道如何使用ObjectOutputStream和GZIPOutputStream與映射寫入。請建議天氣是值得使用映射讀/寫連同對象輸出流,如果任何人有相同的經驗,請發佈任何示例代碼。Java Gzip一個對象並使用MappedByteBuffer將其序列化

回答

1

您鏈接的頁面顯示映射寫入的性能較差。它只能在讀取和查找操作上勝出。所以我想這不會對你有所幫助,因爲ObjectOutputStream和GZipOutputStream都是簡單的寫入appender。

+0

對不起,沒有映射寫模式。我的意思是讀/寫模式 – Emil 2010-09-08 13:14:59

+0

你使用讀/寫模式嗎?你說你正在使用ObjectOutputStream寫入磁盤。聽起來只寫。 – Thilo 2010-09-08 13:16:58

+0

其實我已經讀回過之後writing.This實際上是過濾data.Filtering的3個三維陣列是一個昂貴的過程,另外,如果我把這些數組在內存中,將所以只是堵塞記憶暫時直到有用於過濾的數據,它將在磁盤上。當需要時它將被讀取。 – Emil 2010-09-08 13:21:58

相關問題