private void taskCompletedCallback(IAsyncResult ar) { saveOrderStateDelegate orderStateDelegate = (saveOrderStateDelegate)((AsyncResult)ar).AsyncDelegate; AsyncOperation async = (AsyncOperation)ar.AsyncState; // finish the asynchronous operation orderStateDelegate.EndInvoke(ar); }
public void saveOrderStateAsync(int orderID, int userID) { saveOrderStateDelegate orderStateDelegate = new saveOrderStateDelegate(saveOrderStateTask); AsyncCallback completedCallback = new AsyncCallback(taskCompletedCallback); lock (_sync) { orderStateDelegate.BeginInvoke(orderID, userID, completedCallback, null); _taskIsRunning = true; } }