|
run文で、あるPerlプログラムをフィルタとして実行しています。その実行
時間が、Ver.8_B28以降、異常に長くなりました。以下のようなコードで、
あるテキストファイルの場合の時間を測定したところ次のようになります。
Ver.8_B27まで:常に1500〜2500ミリ秒ぐらい、つまり2秒前後。
B28以降:長いときは94秒前後、短いときでも14秒前後。
ただし、出力内容は同じです。
環境は Windows XP SP3、秀丸V8.00 Beta45 です。
B28の改版履歴の所に「プログラム実行で標準出力の待機中にCPU使用率が
上がる対策。」というのがありますが、これと関係があるのかな、などと
推測していますが、よくわかりません。
$PERL_PRG = "〜〜〜.pl";
#Time1 = tickcount;
disabledraw;
selectall;
run "perl " + $PERL_PRG + " < con > con";
title "時間:" + str(tickcount - #Time1) + " ミリ秒";
title -1;
endmacro;
B27以前と以降での時間の差を確認するだけなら、Perlプログラムは
以下のもので十分です。
while ( <STDIN> ) {
print;
}
|
|