摘要:async, await用法
如果才能使用async及await
1)使用VS2012
2)使用VS2010 + SP1 + 把Visual Studio Async CTP下載下來,並安裝。
參數連結:
http://www.dotblogs.com.tw/simplecestlavie/archive/2012/06/26/73080.aspx
http://www.cnblogs.com/GrayZhang/archive/2011/09/07/csharp-vnext.html
Visual Studio Async CTP下載
msdn
範例程式碼如下。
根據讀完的了解,async比較類似標明這個function裡面有用到await,
所以Async_Button的Click的事件也需要加入async,不然會出現錯誤。
private async void Async_Button_Click(object sender, EventArgs e)
{
OutputTextBlock.Text += "開始" + Environment.NewLine;
StringBuilder sb = new StringBuilder();
string[] fileNames = System.IO.Directory.GetFiles("r:\\", "*.txt");
foreach (var file in fileNames)
{
var str = await fnGetFileContentAsync(file);
sb.Append(str);
OutputTextBlock.Text += file + Environment.NewLine;
}
//ProcessWrite();
OutputTextBlock.Text += "結束" + Environment.NewLine;
}
private async Task fnGetFileContentAsync(string fileName)
{
using (var s = new System.IO.StreamReader(fileName))
{
return await s.ReadToEndAsync();
}
}
============ 以下是簽名檔 ============
一個小小螺絲釘。
第一次建立Blog,希望以後能慢慢充實它。
Howard