在Windows中,我可以从单个应用程序打开多个InputStream到同一个文件吗?我现在正在使用Linux进行编程,而且在我搞砸整个过程之前我想知道....
基本上我正在解析一个zip文件。我想将解压缩,读取,写入和md5sum的任务分解为2个独立的核心,这样我就可以继续这个过程,然后继续下一个同样的过程。
我可以在Linux上执行此操作,但我担心Windows因为它们会锁定文件。
答案 0 :(得分:2)
windows不会锁定多个读者。这将很好。
说,很难想象cpu是这种情况下的瓶颈。你真的可以获得更好的多线程解压缩性能吗?似乎io更可能是瓶颈(在这种情况下,多线程通常没有帮助)。
答案 1 :(得分:2)
您不必担心这一点 - 除非您去创建文件锁,否则不会从多个并发读取中锁定该文件。但是,如果您同时阅读和写作,则需要小心缓冲。
无论如何,我怀疑你会被这里的磁盘束缚,并且不会通过多线程获得任何东西,但我不知道你的情况的细节。