并行写入文件"按块"

时间:2016-06-28 11:21:34

标签: python multithreading unix

我知道如果两个并发进程想要写入同一个文件,那么第一个进程会锁定该文件以进行写入,因此第二个进程必须等到锁被释放。

现在,我有N个名为block_i的文件,其中i = 1..N,每个1 Gb。我需要创建一个大小为N Gb的大文件block_all,由每个block_i文件组成。 因为每个block_i必须用字节写

((i-1) * 2**30) --- ((i * 2**30) - 1)

的block_all文件,有没有办法以真正的并行方式写入所有N个文件,因为永远不会有重叠?即有没有办法锁定文件以写入BY BLOCK?

注意:我在unix操作系统上,我在python中工作。

谢谢

0 个答案:

没有答案