现在我正在从事有关数据格式转换的工作。有一个大文件,比如 10GB,我目前实现的解决方案是逐行读取这个文件,转换每一行的格式,然后输出到一个输出文件。我发现转换过程是一个瓶颈。所以我试图以并发的方式做到这一点。
每一行都是一个完整的单元,与其他行无关。有些行可能会被丢弃,因为该行中的某些特定值不符合需求。
现在我有两个计划:
一个线程从输入文件中逐行读取数据,然后将行放入队列,几个线程从队列中获取行,转换格式,然后将行放入输出队列,最后一个输出线程从输出队列中读取行并写入输出文件。
几个线程当前从输入文件的不同部分读取数据,然后处理该行并通过输出队列或文件锁输出到文件。
你们能给我一些建议吗?对此,我真的非常感激。
提前致谢!