我做了一个程序来计算单个文件的字数, ,但我怎样才能修改我的程序,因此它给出了所有文件(作为一个值)的字的总量。多线程 - 计算来自多个文件的字的总量
我的代码如下所示:
public class WordCount implements Runnable
{
public WordCount(String filename)
{
this.filename = filename;
}
public void run()
{
int count = 0;
try
{
Scanner in = new Scanner(new File(filename));
while (in.hasNext())
{
in.next();
count++;
}
System.out.println(filename + ": " + count);
}
catch (FileNotFoundException e)
{
System.out.println(filename + " blev ikke fundet.");
}
}
private String filename;
}
与主级:
public class Main
{
public static void main(String args[])
{
for (String filename : args)
{
Runnable tester = new WordCount(filename);
Thread t = new Thread(tester);
t.start();
}
}
}
,以及如何避免竞争条件? 谢谢你的帮助。
什么样的竞赛条件? 我也看不到你在哪里添加不同文件的字数。 – zmbq
你想要一个runnable /文件,还是只想让特定的runnable循环遍历所有文件?多线程的评论使这成为一个令人困惑的问题 – Robin
我现在添加了我的主类。 – Chris