Java中如何同时读取多个stdin流

   2024-10-01 3570
核心提示:在Java中可以使用多线程来同时读取多个stdin流。可以创建多个线程来读取不同的stdin流,并让这些线程并行运行。下面是一个示例代

在Java中可以使用多线程来同时读取多个stdin流。可以创建多个线程来读取不同的stdin流,并让这些线程并行运行。

下面是一个示例代码,演示如何同时读取两个stdin流:

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class MultiStdinReader {    public static void main(String[] args) {        Thread t1 = new Thread(new StdinReader("Stream 1:"));        Thread t2 = new Thread(new StdinReader("Stream 2:"));        t1.start();        t2.start();    }    static class StdinReader implements Runnable {        private String streamName;        public StdinReader(String streamName) {            this.streamName = streamName;        }        @Override        public void run() {            BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));                        try {                while (true) {                    System.out.print(streamName);                    String line = reader.readLine();                    System.out.println("Read: " + line);                }            } catch (IOException e) {                e.printStackTrace();            }        }    }}

在上面的示例中,创建了两个线程t1和t2,分别读取stdin流,并输出读取的内容。这样可以同时读取两个stdin流,并且不会相互干扰。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号