我有一个 Perl 脚本,它读取两个文件并处理它们。
第一个文件 - 信息文件 - 我将其存储为哈希 (3.5 gb)
第二个文件 - taregt 文件 - 我正在使用来自 info 文件和其他设计的子例程的信息进行处理。(此文件,目标,范围为 30 - 60 GB)
到目前为止的工作是:
- 将信息文件读入哈希
- 将目标文件分成块
我想在所有块上并行运行:
while(chunks){
# do something
sub a {}
sub b {}
}
所以基本上,我想读取一个块,写入它的输出并同时为多个块执行此操作。while 循环读取块文件的每一行,并调用各种子程序进行处理。
有没有办法可以在后台读取块?
我不想为每个块读取信息文件,因为它有 3.5gb 长,我正在将它读入哈希,每次都占用 3.5gb。
现在脚本需要 1-2 小时才能运行 30-60GB。