Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java线程问题_Java_Multithreading - Fatal编程技术网

Java线程问题

Java线程问题,java,multithreading,Java,Multithreading,我试图实现一个场景,使用线程在服务器上执行并发命令。这些命令只向服务器上运行的服务发送请求,并作为回报获得所需的输出 这些命令是在读取文件的基础上生成的,用户将该文件的路径作为应用程序的输入。 基于上述文件中的每一行,将生成一个命令并在服务器上运行。 我通过在linux机器上调用bash进程的实例来运行这些命令。 下面是上面的一个简短的伪实现 Class A { public static void main(blah blah) //take all user inputs, one of w

我试图实现一个场景,使用线程在服务器上执行并发命令。这些命令只向服务器上运行的服务发送请求,并作为回报获得所需的输出

这些命令是在读取文件的基础上生成的,用户将该文件的路径作为应用程序的输入。 基于上述文件中的每一行,将生成一个命令并在服务器上运行。 我通过在linux机器上调用bash进程的实例来运行这些命令。 下面是上面的一个简短的伪实现

Class A {
public static void main(blah blah)
//take all user inputs, one of which is the location of the file that is to be read.
try {
            Runnable runnable =new bckwork(//pass the inputs taken from the user//);
            thread = new Thread(runnable);
            thread.start();
        }
        catch (Exception e) {
           e.printStackTrace();
        }
}
还有做实际工作的班级--

上述代码的问题在于,它们只针对正在读取的文件中的第一行运行,然后执行陷入某种死锁。我猜文件中的下一行永远不会被读取。我的意图是为正在读取的每一行或实际上是正在构造的每一条命令踢一个线程

任何关于如何纠正此错误的建议都将不胜感激。

while ((line = in.readLine()).length()>1) 
in.readLine等待enter并冻结整个应用程序

while ((line = in.readLine()).length()>1)