私のアプリケーションは JavaFX を使用して開発されています。JavaFX クライアントから Solaris マシンの jar ファイルにコマンドを送信し、その jar ファイルの出力を取得して、JSCH を使用して JavaFX アプリケーションのテキスト領域に表示します。もともと、solaris マシンに存在する jar ファイルには 1 つのスレッドしかなかったので、すべての出力は順次であり、混乱はありませんでした。しかし、Solaris に存在する JAR ファイルにマルチスレッドを実装しましたが、これにより次のような問題が発生しました。
テキスト領域に各スレッドの出力を別々に表示したい。テキスト領域を、solaris マシンの jar ファイルで使用されるスレッドの数と同じ部分に分割したいと考えています。Solaris から JavaFX アプリケーションにスレッド数を送信する方法を見つけました。
テキスト領域をパーツに分割するにはどうすればよいですか?
以下は、テキスト領域にスレッドの出力を印刷しているコードです。
while ((jarOutput = reader.readLine()) != null) {
this.logger.info("Status Update = " + jarOutput);
bw.write(jarOutput);
bw.newLine();
bw.flush();
outputFromUnix.append(jarOutput).append("\n");
// Display in activity log area in realtime.
if (DeploymentTaskController.actLogTArea != null
&& !taskName.equalsIgnoreCase(connectBundle)) {
final String outputStr = outputFromUnix.toString();
Platform.runLater(new Runnable() {
@Override public void run() {
DeploymentTaskController.actLogTArea.setText(outputStr);
DeploymentTaskController.actLogTArea.end();
}
});
}
}