我在我的程序中使用了 GZIPInputStream,我知道如果我能让 Java 并行运行我的程序,性能会有所帮助。
一般来说,标准虚拟机是否有一个命令行选项可以在多核上运行?它只在一个上运行。
谢谢!
编辑
我在 Windows XP 上运行普通的 Java SE 6 更新 17。
将 GZIPInputStream 放在单独的线程上会显式帮助吗?不!不要将 GZIPInputStream 放在单独的线程上!不要多线程 I/O!
编辑 2
我想 I/O 是瓶颈,因为我正在读取和写入同一个磁盘......
不过,一般来说,有没有办法让 GZIPInputStream 更快?或者替代并行运行的 GZIPInputStream?
编辑 我使用的 3 代码片段:
GZIPInputStream gzip = new GZIPInputStream(new FileInputStream(INPUT_FILENAME));
DataInputStream in = new DataInputStream(new BufferedInputStream(gzip));