0

我的应用程序是使用 JavaFX 开发的。我从 JavaFX 客户端向 solaris 机器上的 jar 文件发送命令,并获取该 jar 文件的输出,并使用 JSCH 在我的 JavaFX 应用程序的文本区域中显示它。原来,在solaris机器上的jar文件中只有一个线程,所以所有的输出都是顺序的,没有混淆。但是现在我已经在 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();
      }
    });
  }
}
4

0 回答 0