我正在编写一个应用程序,需要处理一个大型文本文件(逗号分隔,包含几种不同类型的记录 - 我没有更改数据存储格式的能力或意愿)。它会读取记录(通常是按顺序读取文件中的所有记录,但并非总是如此),然后将每个记录的数据传递给某些处理过程。
目前,该应用程序的这一部分是单线程的(读取记录,处理它,读取下一个记录等)。我认为,在一个线程中将记录以队列的形式读取,并在另一个线程中以小块或当它们可用时进行处理可能更有效。
我不知道如何开始编写这样的程序,包括所需的数据结构以及如何正确实现多线程。有人可以提供任何指导,或提供其他关于如何提高性能的建议吗?
目前,该应用程序的这一部分是单线程的(读取记录,处理它,读取下一个记录等)。我认为,在一个线程中将记录以队列的形式读取,并在另一个线程中以小块或当它们可用时进行处理可能更有效。
我不知道如何开始编写这样的程序,包括所需的数据结构以及如何正确实现多线程。有人可以提供任何指导,或提供其他关于如何提高性能的建议吗?