我有一个250MB的文件被读取。而且该应用程序是多线程的。如果我允许所有线程读取文件内存饥饿发生。 我得到内存不足的错误。通过多线程读取文件
为了避免它。我想在内存中只有一个字符串(从流中读取)的副本,我希望所有线程都使用它。
while (true) {
synchronized (buffer) {
num = is.read(buffer);
String str = new String(buffer, 0, num);
}
sendToPC(str);
}
基本上我想只有一个字符串的副本时,所有线程完成发送,我想读取第二个字符串等。
@Dheeraj是ü谈论由多个线程共享串的每一行从一个文件中。 – 2011-03-02 08:54:22
是的。我是...... – 2011-03-02 08:55:16
@Dheeraj你想通过使用多个线程达到目标。 – 2011-03-02 08:56:51