バッチファイル処理
バッチファイルの処理の処理速度についてどなたか教えてください。
ある同一のコマンドをよびだすのに、バッチファイル単体で実行する場合と、プログラムからCreateProcessで呼び出す場合の処理速度を比較したのですが、だいぶ異なります。
プログラムで呼び出したいのですが、処理速度が遅くて使いものにならないため、速度UPをしたいのですが、この違いはなにが原因でしょうか。
計測方法は以下です。
●バッチファイル単体→バッチファイルの中で計測(1秒程度でおわる)
●プログラムからCreateProcessで呼び出し→WaitForSingleObjectでプロセスが終了するまでの時間を計測(10秒ぐらいかかる)
それぞれのバッチファイルの中身は以下のとおりです。
(2つのVSSコマンドをコマンドラインから実行するものです)
●バッチファイル単体
...省略
set time1=%TIME::=%
set time1=%time1:~0,10%
echo Start %time1% >> %fileLog% 2>&1
ss cp %project% -YAA,BB >> %fileLog% 2>&1
ss add %folder%\%fileAdd% -YAA,BB -I- >> %fileLog% 2>&1
set time2=%TIME::=%
set time2=%time2:~0,10%
echo End %time2% >> %fileLog% 2>&1
●プログラムからCreateProcessで呼び出しているbatファイル
ss cp $/test/ -YAA,BB
ss add C:\Test\test.dat -YAA,BB -I- 2> C:\Temp\ErrorAdd.txt
お礼
マルチタスクだから余った時間のズレが生じたという事でしょうか? 同じ環境で同じ様に同じプログラムを実行しているのに時間のズレが生じる物でしょうか?