如何克隆或复制 BufferedReader?
How to clone or copy a BufferedReader?
我正在创建一个 Android 应用程序,该应用程序将读取非常大的文件,大约有 1.000 到 40.000 行,单循环需要相当多的时间。因此,我尝试创建一个多线程 reader,它创建多个线程,每个线程读取文件的特定部分,然后将所有小部分放在一个大数组中或 String
.
我正在使用 BufferedReader
循环遍历文件中的每一行,并存储行数。
每次循环 运行,我检查 lineNumber % LINES_PER_READER == 0
是否为真。如果是,我创建一个新的 reader 线程,它应该读取文件中下一个 LINES_PER_THREAD
行数。
我想知道(因为文件可能很大)我是否可以以任何方式复制或克隆 BufferedReader
,以便新的 reader 线程可以从它所在的行开始读取已创建,因为我已经有一个正在读取该行的循环,而不是创建一个新的 BufferedReader
,读取每一行直到我到达指定的行,然后开始读取实际值。
不要克隆 BufferedReader。它会制造麻烦。只需将成批的行发送到各个处理线程。
我正在创建一个 Android 应用程序,该应用程序将读取非常大的文件,大约有 1.000 到 40.000 行,单循环需要相当多的时间。因此,我尝试创建一个多线程 reader,它创建多个线程,每个线程读取文件的特定部分,然后将所有小部分放在一个大数组中或 String
.
我正在使用 BufferedReader
循环遍历文件中的每一行,并存储行数。
每次循环 运行,我检查 lineNumber % LINES_PER_READER == 0
是否为真。如果是,我创建一个新的 reader 线程,它应该读取文件中下一个 LINES_PER_THREAD
行数。
我想知道(因为文件可能很大)我是否可以以任何方式复制或克隆 BufferedReader
,以便新的 reader 线程可以从它所在的行开始读取已创建,因为我已经有一个正在读取该行的循环,而不是创建一个新的 BufferedReader
,读取每一行直到我到达指定的行,然后开始读取实际值。
不要克隆 BufferedReader。它会制造麻烦。只需将成批的行发送到各个处理线程。