Advertisement
Guest User

AsyncAwait

a guest
Jan 19th, 2020
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.48 KB | None | 0 0
  1. using System;
  2. using System.Threading.Tasks;
  3.  
  4. namespace ConsoleApp105
  5. {
  6.     class Program
  7.     {
  8.         static async Task Main()
  9.         {
  10.             await FooAsync();
  11.             await AnotherFooAsync();
  12.         }
  13.  
  14.         private static async Task FooAsync()
  15.         {
  16.             var num = Foo2Async();
  17.  
  18.             for (int i = 0; i < 20; i++)
  19.             {
  20.                 Console.WriteLine($"FooAsync loop --- {i}");
  21.             }
  22.  
  23.             Console.WriteLine($"The number returned from Foo2Async is: {await num}");
  24.             Console.WriteLine("Now FooAsync returns.");
  25.         }
  26.  
  27.         private static async Task<int> Foo2Async()
  28.         {
  29.             var num = new Random().Next(100);
  30.             for (int i = 0; i < 100; i++)
  31.             {
  32.                 Console.WriteLine($" Foo2Async loop ------ {i} --- {num}");
  33.                 num += i;
  34.             }
  35.             Console.WriteLine("Now Foo2Async returns.");
  36.             return await Task.FromResult(num);
  37.         }
  38.  
  39.         private static async Task AnotherFooAsync()
  40.         {
  41.             int current = 1;
  42.             int previous = 1;
  43.  
  44.             Console.WriteLine($"1 -- {previous}\n2 -- {current}");
  45.  
  46.             for (int i = 0; i < 10; i++)
  47.             {
  48.                 int temp = current;
  49.                 current += previous;
  50.                 previous = temp;
  51.                 Console.WriteLine($"3 -- {current}");
  52.             }
  53.  
  54.             await Task.FromResult(0);
  55.         }
  56.     }
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement