c# task与 async/await区别

看似功能相同的东西,实际内部原理不同,task是一个真正的线程,首先都是来自同一个命名空间,task还更下一级.

 task更强调线程,在该线程内执行程序。而async/await更侧重返回的结果集,一般用来取值用,比如:

public Task test()
            {
            return Task.Run(() => { 
                Thread.Sleep(2000);
                k++;
                btnTradeSetting3.Content = k;
            });
        }

 

        private async Task<string> testString()
        {
            return await Task<string>.Run(() =>
            {
                Thread.Sleep(5000);
                return "test";
            });
        }
        private   async void btn_ClickAsync(object sender, RoutedEventArgs e)
        {
            btn.Content = await testString();
        }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值