私は送信コードが正しいかどうかをチェックするプログラムを書いています。ここ は、私のコードのいくつか...入力が十分な大きさ及び提出プログラムは何を読んでいないながら標準入力がC#プロセスでスタックしないようにする方法
Process submitProg;
StreamWriter progInput;
string input;//it will be submitProg's standard input
//initialization
//...
submitProg.Start();
progInput = submitProg.StandardInput;
progInput.Write("{0}",input);
progInput.Close();
progInput.Dispose();
while(!submitProg.HasExited)
if(timeOUT)
submitProg.Kill();
が驚いたことに、それはラインprogInput.Write("{0}",input);
で動けなくなりますです。
投稿コードの中には、何もしないようなやり方があるものがあります。while(1);
私は、入力ファイルが十分に小さいときにプロセスを終了することができます。反対に、入力ファイルが大きければ、プログラムはタイムアウトをチェックせず、入力を読み込んでいる間にスタックしません。
何も読み取らないコードに詰まるのを避けるための解決策はありますか?おかげさまで
ありがとう、私はマルチスレッドで解決しました。 – Nekosyndrome