Functional World/C#

C# 5.0 async, await

프로그래머란 카페인을 코드로 변환하는 기계다 2013. 7. 5. 09:47
public class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
    public async Task SaveFile()
    {
        await Task.Run(()=>
            using(FileStream fs = new FileStream("trashfile.bin",
                                                 FileMode.CreateNew))
            {
                BinaryWriter bw = new BinaryWriter(fs);
                for(int i = 0; i < 100000000; i++)
                    bw.Write(i);
            }
        });
    }
    public async void btnOK_Click(object sender, EventArgs e)
    {
        await SaveFile();
        MessageBox.Show("Complete.");
    }
}

비동기 쓰레드를 너무 쉽게 구현 할 수 있어요...