我有一个包含信息块的二进制文件(以后我将它们称为数据包)。每个数据包由一个固定长度的标头和一个可变长度的主体组成。我必须从数据包标头本身确定正文的长度。我的任务是从文件中读取这些数据包并对它们执行一些操作。目前我正在执行以下任务:
- 将文件作为随机访问文件打开并转到特定的起始位置(用户指定的起始位置)。从这个位置读取第一个数据包。执行具体操作
- 然后在一个循环中
- 读取下一个数据包
- 执行我的操作这一直持续到我到达文件标记的末尾。
如您所料,当文件很大时,串行读取每个数据包并进行处理是一件耗时的事情。我想以某种方式并行化此操作,即数据包生成操作并将其放入某个阻塞队列中,然后从队列中并行检索每个数据包并执行我的操作。
有人可以建议我如何并行生成这些数据包吗?