private void EndDoSomethingCallback(IAsyncResult ar) { AsyncDoSomethingCaller caller = (AsyncDoSomethingCaller)ar.AsyncState; caller.EndInvoke(ar); pendingTasks--; }
public AsyncDoSomething() { pendingTasks++; AsyncDoSomethingCaller caller = new AsyncDoSomethingCaller(); caller.BeginInvoke(new AsyncCallback(EndDoSomethingCallback), caller); }