static void Main(string[] args) { Console.WriteLine(Path.GetFullPath(args[0])); var obj = new AsyncWaitSample(); obj.Execute(args[0]); // 2回目は、ファイルの内容がバッファーにたまっているために、必然的に速度が速くなる // そのため、非同期版は、最後にもう一回呼び出して、公平な速度比較とする。 // ただし、実行環境によっては、並列版のほうが遅くなる場合もある。 Console.WriteLine("並列版を実行します。Enterキーを押してください"); Console.ReadLine(); obj.ExecuteAsync(args[0]); Console.WriteLine("非並列版を実行します。Enterキーを押してください"); Console.ReadLine(); obj.Execute(args[0]); }
static void Main(string[] args) { Console.WriteLine(Path.GetFullPath(args[0])); var obj = new AsyncWaitSample(); obj.Execute(args[0]); // 두 번째는 파일의 내용이 버퍼에 쌓여 있으므로 필연적으로 속도가 빨라진다 // 따라서 비동기 버전은 마지막에 한 번 더 호출해서 속도를 공평하게 비교한다 // 그러나 실행 환경에 따라서는 병렬 버전 쪽이 느려질 때도 있다. Console.WriteLine("병렬 버전을 실행합니다. Enter 키를 눌러 주십시오."); Console.ReadLine(); obj.ExecuteAsync(args[0]); Console.WriteLine("비병렬 버전을 실행합니다. Enter 키를 눌러 주십시오."); Console.ReadLine(); obj.Execute(args[0]); }