JAVA中增强循环中用线程_在Java中以循环方式运行线程
我是Java中的多線程和同步的新手。我正在嘗試實現一項任務,其中給了我5個文件,每個文件將由一個特定線程讀取。每個線程應從文件讀取一行,然后將執行轉發到下一個線程,依此類推。當所有5個線程都讀取第一行時,然后再次從線程1運行行號開始。文件1中的2,依此類推。
Thread ReadThread1 = new Thread(new ReadFile(0));
Thread ReadThread2 = new Thread(new ReadFile(1));
Thread ReadThread3 = new Thread(new ReadFile(2));
Thread ReadThread4 = new Thread(new ReadFile(3));
Thread ReadThread5 = new Thread(new ReadFile(4));
// starting all the threads
ReadThread1.start();
ReadThread2.start();
ReadThread3.start();
ReadThread4.start();
ReadThread5.start();
并且在ReadFile(在run方法中實現Runnable的情況下,我正在嘗試在bufferreader對象上進行同步。
BufferedReader br = null;
String sCurrentLine;
String filename="Source/"+files[fileno];
br = new BufferedReader(new FileReader(filename));
synchronized(br)
{
while ((sCurrentLine = br.readLine()) != null) {
int f=fileno+1;
System.out.print("File No."+f);
System.out.println("-->"+sCurrentLine);
br.notifyAll();
// some thing needs to be dine here i guess
}}
需要幫忙
總結
以上是生活随笔為你收集整理的JAVA中增强循环中用线程_在Java中以循环方式运行线程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全数字实时仿真平台SkyEye目标码覆盖
- 下一篇: 高性能全数字嵌入式仿真测试软件SkyEy