0

plink を呼び出して、Java から ssh を使用してリモートの場所でシェル スクリプトを実行しています。バッファリングされたデータを ssh コンソールから取得している間、それらを JTextField などにリアルタイムで書き込みたいと考えています (バックエンド コードは約 10 分間実行され、いくつかの文字列を生成し続けます)。

その間、バックエンド コードが完全に実行されるまで実行がハングアップし、出力が一度に表示されます。Eclipseコンソールに指示すると、実行中に1行ずつ書き込まれます。助言がありますか?

    //JFrame Component
    public GUIApplicationConsoleFrame(String title) {
    dispFrame = new JFrame(title);
    opArea = new JTextArea("");
    ipField = new JTextField();


    // Writing Output, redirected to JTextArea
    if (std.available () > 0) {
            value = std.read ();
            out((char) value);

            while (true) {
                value = std.read ();
                out((char) value);
                if (<terminating condition>)
                    if (++count==2)
                        break;
                Thread.sleep(3);
            }
        }

ありがとう、アリア

4

1 に答える 1