Beispiel #1
0
        // Testing

        static async Task Test()
        {
            var pts  = new PauseTokenSource();
            var task = SomeMethodAsync(pts.Token);

            // sync version
            Console.WriteLine("Before pause requested");
            pts.PauseWithResponseAsync().Wait();
            Console.WriteLine("After pause requested, paused: " + pts.Token.IsPaused);
            pts.PauseWithResponseAsync().Wait();
            Console.WriteLine("After pause requested, paused: " + pts.Token.IsPaused);
            Console.WriteLine("Press enter to resume...");
            Console.ReadLine();
            pts.Resume();

            // async version:

            Console.WriteLine("Before pause requested");
            await pts.PauseWithResponseAsync();

            Console.WriteLine("After pause requested, paused: " + pts.Token.IsPaused);
            await pts.PauseWithResponseAsync();

            Console.WriteLine("After pause requested, paused: " + pts.Token.IsPaused);
            Console.WriteLine("Press enter to resume...");
            Console.ReadLine();
            pts.Resume();
        }
Beispiel #2
0
 private void Pause()
 {
     _crawlerPauseTokenSource.PauseWithResponseAsync().Wait();
     _crawlerService.IsPaused = true;
     _pauseCommand.RaiseCanExecuteChanged();
     _resumeCommand.RaiseCanExecuteChanged();
 }
Beispiel #3
0
        static void Main()
        {
            var pts  = new PauseTokenSource();
            var task = SomeMethodAsync(pts.Token);

            Task.Run(() =>
            {
                Console.WriteLine("Before pause requested");
                pts.PauseWithResponseAsync().Wait();
                Console.WriteLine("After pause requested.");
                pts.Resume();
            }).Wait();
            Console.ReadLine();

            // Alternatively, async version:

            /*
             * Func<Task> func = async () =>
             * {
             *              Console.WriteLine("Before pause requested");
             *              await pts.PauseWithResponseAsync();
             *              Console.WriteLine("After pause requested.");
             *              pts.Resume();
             * };
             * func().Wait();
             * Console.ReadLine();
             */
        }
Beispiel #4
0
 private void Pause()
 {
     crawlBlogsPause.PauseWithResponseAsync().Wait();
     crawlerService.IsPaused = true;
     pauseCommand.RaiseCanExecuteChanged();
     resumeCommand.RaiseCanExecuteChanged();
 }