using System.Threading.Tasks;
public static async void Thread1()
for (int i = 0; i < 100; i++)
Console.WriteLine("Thread1 " + i);
public static async void Thread2()
for (int i = 0; i < 100; i++)
Console.WriteLine("Thread2 " + i);
public static async Task Task1()
for (int i = 0; i < 100; i++)
Console.WriteLine("Task1 " + i);
public static async Task Task2()
for (int i = 0; i < 100; i++)
Console.WriteLine("Task2 " + i);
public static async Task MyFunc()
public static void TestWithThreads()
var thread1 = new Thread(Thread1);
var thread2 = new Thread(Thread2);
while (thread1.IsAlive || thread2.IsAlive)
public static void TestWithTasks()
public static void Main()