プロセスを開始しているときに結果が気になることはありませんか?Process.Start()を実行するときに、それを使用してラップする必要がありますか?
Process.Start(xxx);
それとも、Process.dispose(bool)
メソッドの実装を見てみると、この
using (Process.Start(xxx)){}
プロセスを開始しているときに結果が気になることはありませんか?Process.Start()を実行するときに、それを使用してラップする必要がありますか?
Process.Start(xxx);
それとも、Process.dispose(bool)
メソッドの実装を見てみると、この
using (Process.Start(xxx)){}
を行う必要がありますが、それはProcess
インスタンス上Close()
を呼び出すことを示しています。これは順番に、ネイティブのプロセスハンドルをクリーンアップするので、おそらく悪い考えではありません。
また、プロセスが終了したかどうかを確認するために使用する待機ハンドルをクリーンアップします。
using (...)
ブロックを使用しない場合でも、ファイナライザーはこれらのリソースを最後に捕捉します。
Process.Start
によって返されるProcess
オブジェクトは、WindowsプロセスHANDLE
が含まれているので、あなたは、もはやProcess
オブジェクトを使用する必要が一度それが配置されるべきではありません。
返されたProcess
オブジェクトをまったく使用する必要がない場合は、空のusing
ブロックが表示されます。 Process
を処理するとハンドルが解放されますが、(幸いにも)処理が実行されることはありません。
「u」のような略語を使用するのは一般的に貧弱です。 – RCIX
RCIX:良い点。一定 – Simon