using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApp5
{
class Program
{
public static int num = 0;
static void Main(string[] args)
{
Main2();
System.Console.WriteLine("hello word");
System.Console.ReadKey();
}
static async void Main2()
{
var t1 = new Task(fun);
t1.Start();
var t2 = new Task(fun);
t2.Start();
await Task.WhenAll(t1, t2);
System.Console.WriteLine(num);
}
public static void fun() {
for (int i = 0; i < 10; i++) {
Thread.Sleep(10);
num++;
}
}
}
}
运行结果

此代码示例展示了如何在C#中使用异步任务并行执行两个函数,通过`Task.WhenAll`等待所有任务完成,并在主线程中更新共享变量。程序演示了线程安全地增加全局变量`num`的过程。
1万+

被折叠的 条评论
为什么被折叠?



