青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
金慶的專欄
C++博客
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
423 隨筆 :: 0 文章 :: 454 評論 :: 0 Trackbacks
公告
我的隨筆
我的評論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
(502)
1. C/C++(166)
(rss)
2. 網游開發(108)
(rss)
3. Golang(20)
(rss)
4. Linux/Unix(30)
(rss)
5. 軟工與管理(44)
(rss)
6. Python(23)
(rss)
7. Erlang(18)
(rss)
8. Rust(16)
(rss)
9. 其它(77)
(rss)
隨筆檔案
(423)
2023年1月 (1)
2022年11月 (1)
2022年10月 (2)
2022年9月 (1)
2022年4月 (6)
2022年1月 (2)
2021年12月 (4)
2021年11月 (6)
2021年10月 (2)
2021年9月 (2)
2021年8月 (7)
2021年7月 (2)
2021年5月 (2)
2021年3月 (1)
2021年2月 (2)
2021年1月 (1)
2020年12月 (1)
2020年10月 (1)
2020年9月 (5)
2020年8月 (1)
2020年7月 (1)
2020年6月 (1)
2020年4月 (2)
2020年3月 (3)
2020年2月 (3)
2020年1月 (1)
2019年12月 (1)
2019年9月 (2)
2019年4月 (2)
2019年1月 (1)
2018年12月 (1)
2018年11月 (3)
2018年10月 (1)
2018年9月 (3)
2018年8月 (3)
2018年7月 (2)
2018年6月 (4)
2018年5月 (4)
2018年4月 (4)
2018年3月 (1)
2018年1月 (2)
2017年12月 (2)
2017年11月 (3)
2017年10月 (3)
2017年8月 (7)
2017年7月 (1)
2017年6月 (1)
2017年5月 (3)
2017年4月 (3)
2017年3月 (3)
2017年2月 (2)
2017年1月 (2)
2016年12月 (5)
2016年11月 (2)
2016年10月 (2)
2016年9月 (1)
2016年8月 (6)
2016年7月 (3)
2016年6月 (2)
2016年5月 (4)
2016年4月 (2)
2016年3月 (2)
2016年1月 (3)
2015年12月 (2)
2015年11月 (2)
2015年10月 (1)
2015年8月 (2)
2015年7月 (1)
2015年6月 (1)
2015年5月 (4)
2015年4月 (3)
2015年3月 (4)
2015年2月 (5)
2015年1月 (4)
2014年12月 (3)
2014年11月 (3)
2014年10月 (2)
2014年9月 (3)
2014年8月 (1)
2014年4月 (4)
2014年3月 (1)
2014年2月 (4)
2014年1月 (5)
2013年12月 (5)
2013年11月 (5)
2013年9月 (2)
2013年8月 (2)
2013年7月 (2)
2013年6月 (2)
2013年5月 (1)
2013年1月 (2)
2012年12月 (1)
2012年11月 (1)
2012年9月 (1)
2012年8月 (3)
2012年7月 (2)
2012年6月 (1)
2012年4月 (3)
2012年3月 (2)
2012年2月 (3)
2012年1月 (2)
2011年11月 (2)
2011年10月 (3)
2011年9月 (2)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年5月 (3)
2011年1月 (2)
2010年12月 (1)
2010年11月 (2)
2010年10月 (2)
2010年9月 (3)
2010年8月 (2)
2010年7月 (3)
2010年6月 (1)
2010年5月 (3)
2010年4月 (3)
2010年3月 (5)
2010年2月 (4)
2010年1月 (4)
2009年12月 (2)
2009年11月 (3)
2009年10月 (4)
2009年9月 (3)
2009年8月 (2)
2009年7月 (4)
2009年6月 (1)
2009年5月 (3)
2009年4月 (4)
2009年3月 (2)
2009年2月 (5)
2009年1月 (1)
2008年12月 (7)
2008年11月 (4)
2008年10月 (1)
2008年9月 (3)
2008年8月 (4)
2008年7月 (3)
2008年6月 (4)
2008年5月 (6)
2008年4月 (7)
2008年3月 (6)
2008年1月 (5)
2007年12月 (7)
2007年11月 (4)
2007年10月 (5)
2007年9月 (6)
2007年8月 (8)
2007年7月 (5)
相冊
公告照片
搜索
積分與排名
積分 - 659813
排名 - 25
最新評論
1.?re: boost::asio::spawn 將一統C++網絡庫
asio 成為C++首選網絡庫
--linda
2.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--金慶
3.?re: mingw編譯OrzNet
能發送一個mingw編譯好的OrzNet庫給我嗎? liuweiqcxy@163.com
謝謝!
--劉威
4.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
5.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
閱讀排行榜
1.?"multiple definition of" 錯誤(11060)
2.?SVN中邪惡的replace(10984)
3.?VS2005編譯libevent(10430)
4.?混音算法的學習與研究(10237)
5.?C調用lua腳本的效率測試(9020)
評論排行榜
1.?VC6正在被拋棄(35)
2.?VS2005編譯libevent(21)
3.?"multiple definition of" 錯誤(18)
4.?C++引用優于指針(17)
5.?ACE與ASIO之間關于Socket編程的比較(16)
C#異步方法返回void和Task的區別
# C#異步方法返回void和Task的區別
(金慶的專欄 2021.2)
如果異步(async關鍵字)方法有返回值,返回類型為T時,返回類型必然是 `Task<T>`。
但是如果沒有返回值,異步方法的返回類型有2種,一個是返回 Task, 一個是返回 void:
```
public async Task CountDownAsync(int count)
{
for (int i = count; i >= 0; i--)
{
await Task.Delay(1000);
}
}
public async void CountDown(int count)
{
for (int i = count; i >= 0; i--)
{
await Task.Delay(1000);
}
}
```
調用時,如果返回 Task, 但返回值被忽略時,VS 會用綠色波浪線警告:
```
CountDownAsync(3);
~~~~~~~~~~~~~~~~~
```
信息為:
```
(awaitable) Task AsyncExample.CountDownAsync(int count)
Usage:
await CountDownAsync(...);
Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call.
```
中文為:
```
CS4014:由于此調用不會等待,因此在此調用完成之前將會繼續執行當前方法。請考慮將"await"運算符應用于調用結果。
```
添加 await 后就正常了:
```
await CountDownAsync(3);
```
如果調用者不是一個異步方法,因為只有在異步方法中才可以使用 await,
或者并不想在此等待,如想同時執行多個 CountDownAsync(),
就不能應用 await 來消除警告。
此時可以改用 void 返回值的版本:
```
void Test()
{
...
CountDown(3);
CountDown(3);
...
}
async void CountDown(int count)
{
for (int i = count; i >= 0; i--)
{
await Task.Delay(1000);
}
}
```
> Never call `async Task` methods without also awaiting on the returned Task. If you don’t want to wait for the async behaviour to complete, you should call an `async void` method instead.
摘自:http://www.stevevermeulen.com/index.php/2017/09/using-async-await-in-unity3d-2017/
CountDown() 可以直接調用 CountDownAsync() 實現:
```
async void CountDown(int count)
{
await CountDownAsync(count);
}
```
使用下劃線變量忽略異步方法的返回值也可以消除警告:
```
void Test()
{
...
_ = CountDownAsync(3);
_ = CountDownAsync(3);
...
}
```
但是這樣同時也會忽略 CountDownAsync() 中的異常。如以下異常會被忽略。
```
void Test()
{
...
_ = CountDownAsync(3);
...
}
async Task CountDownAsync(int count)
{
for (int i = count; i >= 0; i--)
{
await Task.Delay(1000);
}
throw new Exception();
}
```
如果是調用返回 void 的異步方法,Unity 會報錯:
```
Exception: Exception of type 'System.Exception' was thrown.
```
## 對 Async 后綴的說明
```
You could say that the Async suffix convention is to communicate to the API user that the method is awaitable. For a method to be awaitable, it must return Task for a void, or Task<T> for a value-returning method, which means only the latter can be suffixed with Async.
```
摘自:https://stackoverflow.com/questions/15951774
grpc 生成的代碼中,異步請求返回了一個 AsyncCall 對象,AsyncCall 實現了 GetAwaiter() 接口:
```
public virtual grpc::AsyncUnaryCall<global::Routeguide.Feature> GetFeatureAsync(global::Routeguide.Point request, ...)
```
可以這樣調用并等待:
```
var resp = await client.GetFeatureAsync(req);
```
雖然返回類型不是`Task<>`, 但是可等待,所以添加了 Async 后綴。
posted on 2021-02-25 10:38
金慶
閱讀(1108)
評論(0)
編輯
收藏
引用
所屬分類:
9. 其它
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
TortoiseGit is OK but GitExtensions fails
DeathVoteExpirationTimeout in Orleans
How to delete local branches of GitExtension
Clustering provider in Orleans
Why Orleans' actor is virutal
What comes after microservice?
Rust Deref coercion example
Rust Error Return Check Policy
Rust visibility
Why does Rust check borrow even in single thread
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 金慶
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
亚洲欧美一区在线
|
国产精品视频xxx
|
亚洲美女福利视频网站
|
欧美成人午夜激情视频
|
欧美91视频
|
蜜臀99久久精品久久久久久软件
|
免费一级欧美片在线观看
|
美日韩免费视频
|
亚洲国产精品久久久久婷婷884
|
久久婷婷人人澡人人喊人人爽
|
久久综合久久久
|
亚洲高清不卡
|
在线亚洲精品福利网址导航
|
午夜精品在线看
|
快播亚洲色图
|
欧美午夜精品久久久久免费视
|
久久精品理论片
|
久久精品亚洲国产奇米99
|
久久综合九色九九
|
国产精品高潮视频
|
今天的高清视频免费播放成人
|
欧美国产欧美亚州国产日韩mv天天看完整
|
美日韩免费视频
|
亚洲精品综合久久中文字幕
|
亚洲午夜电影
|
久热精品在线视频
|
国产精品99一区
|
亚洲高清影视
|
小黄鸭精品aⅴ导航网站入口
|
欧美成人dvd在线视频
|
一区二区三区久久精品
|
噜噜噜躁狠狠躁狠狠精品视频
|
国产精品久久久久久久久久三级
|
卡通动漫国产精品
|
欧美丝袜一区二区三区
|
一区二区三区在线观看欧美
|
一本色道久久综合亚洲二区三区
|
日韩一二三区视频
|
久久精品视频亚洲
|
国产精品天美传媒入口
|
亚洲乱亚洲高清
|
久久综合九色综合欧美就去吻
|
一区二区三区视频观看
|
欧美高清不卡
|
亚洲第一主播视频
|
久久精品一区二区三区中文字幕
|
欧美大成色www永久网站婷
|
国产欧美日韩视频一区二区三区
|
一本色道久久88亚洲综合88
|
免费亚洲视频
|
欧美在线影院在线视频
|
国产片一区二区
|
欧美亚洲一区二区在线
|
亚洲天堂第二页
|
欧美日韩大片
|
日韩视频在线观看免费
|
亚洲电影免费观看高清完整版
|
久久精品论坛
|
在线观看免费视频综合
|
久久亚洲图片
|
久久久精品一区二区三区
|
国产区在线观看成人精品
|
欧美亚洲网站
|
欧美一级黄色网
|
国产尤物精品
|
另类天堂av
|
欧美wwwwww
|
这里只有精品电影
|
在线午夜精品
|
国产欧美日韩一区
|
久久精品在线视频
|
久久久久久9
|
亚洲国产专区校园欧美
|
亚洲黄色性网站
|
国产精品草莓在线免费观看
|
亚洲综合首页
|
午夜一区二区三区不卡视频
|
国产亚洲成av人片在线观看桃
|
快射av在线播放一区
|
蜜桃av一区
|
亚洲视频在线观看一区
|
亚洲影视在线播放
|
在线观看日韩国产
|
亚洲激情欧美激情
|
国产精品丝袜91
|
欧美日韩精品久久
|
亚洲国产mv
|
av成人毛片
|
国产一区二区电影在线观看
|
欧美不卡激情三级在线观看
|
欧美女同在线视频
|
久久国产精品一区二区三区
|
麻豆成人综合网
|
亚洲影视中文字幕
|
久久免费的精品国产v∧
|
99成人精品
|
久久激情视频久久
|
午夜精品久久久久久久99热浪潮
|
欧美主播一区二区三区美女 久久精品人
|
免费久久久一本精品久久区
|
日韩一级网站
|
欧美一区二区三区四区在线观看地址
|
91久久精品国产91性色
|
亚洲欧美一区二区三区久久
|
亚洲精品少妇网址
|
久久激五月天综合精品
|
亚洲欧美日韩系列
|
欧美顶级艳妇交换群宴
|
久久久久久久久久码影片
|
欧美日韩第一页
|
免费成人黄色
|
国产一区91
|
亚洲综合精品四区
|
亚洲午夜精品网
|
欧美电影在线观看完整版
|
久久午夜羞羞影院免费观看
|
欧美日韩视频在线观看一区二区三区
|
美女主播精品视频一二三四
|
国产伦精品一区二区三区四区免费
|
免费在线播放第一区高清av
|
亚洲欧美日韩国产精品
|
欧美一区二区福利在线
|
在线亚洲伦理
|
欧美精品一区二区三区久久久竹菊
|
久久久久久久网
|
国产欧美日韩免费看aⅴ视频
|
一区二区三区久久网
|
夜夜夜精品看看
|
欧美成人免费全部
|
欧美激情一区二区三区蜜桃视频
|
黄色av日韩
|
欧美一二三区精品
|
久久精品视频在线看
|
国产精品亚洲片夜色在线
|
亚洲性xxxx
|
亚洲欧美日韩在线综合
|
国产精品免费一区二区三区观看
|
日韩一区二区精品葵司在线
|
一区二区免费在线播放
|
亚洲高清久久网
|
另类图片国产
|
亚洲国产成人91精品
|
午夜欧美电影在线观看
|
欧美性淫爽ww久久久久无
|
一本色道久久综合亚洲91
|
亚洲图片欧洲图片av
|
国产精品成人免费精品自在线观看
|
日韩亚洲欧美一区
|
欧美亚洲免费高清在线观看
|
国产午夜久久
|
久久夜色精品国产欧美乱
|
欧美激情影院
|
在线亚洲精品福利网址导航
|
国产精品mm
|
欧美一区二区三区喷汁尤物
|
久久综合给合
|
日韩视频在线免费
|
国产精品福利在线观看
|
亚洲欧美中文日韩v在线观看
|
久久婷婷麻豆
|
亚洲精品少妇网址
|
国产精品一区二区三区久久
|
久久久久综合网
|
日韩亚洲综合在线
|
久久久久久久久岛国免费
|
亚洲欧洲综合另类
|
国产精品嫩草影院av蜜臀
|
久久国产精品一区二区三区
|
亚洲狠狠婷婷
|
久久精品国产亚洲精品
|
亚洲国产1区
|
国产精品看片资源
|
久久视频国产精品免费视频在线
|
久久久精品一区
|
亚洲免费不卡
|
久久欧美肥婆一二区
|
日韩亚洲精品在线
|
韩国av一区二区
|
欧美美女日韩
|
久久乐国产精品
|
在线视频欧美精品
|
免费观看日韩av
|
香蕉av777xxx色综合一区
|
亚洲精品乱码久久久久久黑人
|
国产精品久久一卡二卡
|
欧美成人午夜77777
|
午夜视频一区
|
亚洲视频免费看
|
亚洲高清资源
|
乱人伦精品视频在线观看
|
午夜国产精品影院在线观看
|
亚洲日韩视频
|
激情文学综合丁香
|
国产精品无码永久免费888
|
欧美成人综合
|
久热国产精品视频
|
久久久999精品
|
欧美诱惑福利视频
|
亚洲尤物在线视频观看
|
日韩性生活视频
|