次のシナリオがあります。
async void DoStuff() {
// ...
}
button1.Click += (s, p) => {
DoStuff();
};
async void
最初の呼び出しがまだ不完全なときにメソッドを呼び出すとどうなるかわかりません。呼び出しは、呼び出されるたびに新しいスレッドを作成しますか、それとも呼び出しは、作成された前のスレッドを破棄してオーバーライドしますか?また、前者の仮定が正しい場合、ローカルメソッド変数は共有されますか?
編集:
async await
Windows 8アプリでは動作が異なるため、誤解していました。asyncメソッドを呼び出すことは、私のような新しいスレッドを作成することと同じだと思った場合は、この明確なaricleを読んでください。