コード例 #1
0
ファイル: Program.cs プロジェクト: dadaoh/dotnetlab
        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]);
        }
コード例 #2
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]);
        }