1 件の投稿を表示中 (合計 8 個)
  • 作成者
    投稿
  • #4182
    Mikage
    メンバー

    いつも快適に利用させていただいております。

    EmEditor上からコンソールプログラムを起動し、標準出力をアウトプットバーへ表示しているのですが、リアルタイムではないようです。

    これは仕様でしょうか?

    自作プログラムの動作を、標準出力を使ってロギングし、「プログラムを動作させたまま」EmEditor上で編集を行うといった用途です。
    出力は、1秒間に100行を超えることもあります。

    ある程度の量までは、プログラムを終了すると残りが全て表示されるようですが、千行程度を出力すると、プログラムを終了しても完全に表示しきれないようです。

    なにか改善方法等ありましたらご教授ください。
    よろしくお願い致します。

    #4184
    Yutaka Emura
    キーマスター

    調べてみますので、少々お待ちください。どうもありがとうございます。

    #4213
    Yutaka Emura
    キーマスター

    この現象ですが、 6.00.4 RC 3 で修正されているはずなので、ご確認いただけると幸いです。

    #4215
    takuya
    参加者

    大量のテキストをアウトプットバーに出力すると、いろいろおかしくなる点は私も気づいています。

    yahoo.co.jpのHTMLを取り出して、アウトプットバーに出してみます。

    out.txt

    とコンソールから、リダイレクトを使って保存すると期待通りの結果が得られることは確認しています。

    もし。

    perl sample.pl | Emeditor.exe –outputbar

    と出力をパイプで渡すことができれば・・

    #4218
    Yutaka Emura
    キーマスター

    RC4 では、アウトプット バーの出力文字数の制限をなくしたので、そちらでもお試しください。

    #4221
    Mikage
    メンバー

    ご回答ありがとうございます。

    早速本日リリースのRC4を試してみました。
    残念ながら以下のどちらの現象も改善が確認できませんでした。

    ○出力の表示がリアルタイムでない
     ある程度の量が出力された段階で表示されるようです
     また、対象プログラムが終了した段階で表示されるようです

    ○大量の出力が最後まで表示されない
     大量の出力を行うと、対象プログラムを終了しても最後まで表示されません
     手元で試したところ、38321bytesで表示が止まりました

    以上、ご確認よろしくお願い致します。

    #4230
    Yutaka Emura
    キーマスター

    – 出力の表示がリアルタイムでない
    というのは、これは、いろいろ調べてみましたが、対応はできませんでした。Visual Studio のアウトプットでも、やはり、リアルタイムではありませんでした。何かいい方法があるのかもしれませんが、ちょっと難しいかもしれません。

    – 大量の出力が最後まで表示されない
    これは、おかしいので、もう少しパイプのバッファを大きくしたり、その他の最適化を行ってみました。RC 5 でお試しください。

    #4233
    Mikage
    メンバー

    ご回答ありがとうございます。

    リアルタイムに表示されない件については、こちらのミスでした。
    大変申し訳ありませんでした。
    fprintf(stdout,…);
    とした後、
    fflush(stdout);
    としていなかったことが原因でした。
    大変失礼致しました。

    また、出力量が多くなったときに表示されなくなる件については、RC5にて改善を確認しました。
    素早くご対応くださり、誠にありがとうございました。

    今後ともよろしくお願い致します。

1 件の投稿を表示中 (合計 8 個)
  • このトピックに返信するにはログインしてください。