Skip to content

Instantly share code, notes, and snippets.

public class AsyncClass
{
//この通知によってライブラリユーザはUIを更新することが高いと予想される
public event Action SomeEventHandler;
public async Task DoAsync()
{
//ここまでUIスレッドで実行されているとする
//UIスレッドの同期コンテキストをキャッシュする
private async void Button_Click_1(object sender, RoutedEventArgs e)
{
//ConfigureAwait(false)でUIスレッドに戻さない
await Task.Delay(5).ConfigureAwait(false);
var asyncObject = new AsyncClass();
asyncObject.SomeEventHandler += async()=>
{