GUI が外部の C++ 実行可能ファイルと対話する Java アプリケーションを作成しました。
ProcessBuilder を使用して、C++ executsble から GUI に in/out/error を作成してアタッチしています。サイズ 1024 のバッファーを使用しています。Java GUI が 1024 サイズの文字を読み取るときに、C++ が多数の printf ステートメントを使用して非常に高速で実行されている場合はどうでしょうか。これによりボトルネックが発生しますか?
public void run()
{
try
{
char[] buffer = new char[1024];
for (int n = reader.read(); n != -1; n = reader.read(buffer))
{
writeBytes2Text(buffer, 0, n);
}
}
catch (Exception x)
{
//some exception
}
}