/// <summary> /// Helper that performs our asynchronous deleting. /// </summary> private void DoDeleteAsync(object asyncState) { FileOperationState state = asyncState as FileOperationState; Exception error = null; // perform the delete operation try { Delete(state.Container, state.File); } catch (Exception e) { error = e; } // construct our event arguments FileActionCompletedEventArgs args = new FileActionCompletedEventArgs(error, state.UserState); // fire our completion event DeleteCompleted(this, args); // recycle our state object ReturnFileOperationState(state); // decrement our pending operation count PendingOperationsDecrement(); }
/// <summary> /// Helper that performs our asynchronous loading. /// </summary> private void DoLoadAsync(object asyncState) { // set our processor affinity SetProcessorAffinity(); FileOperationState state = asyncState as FileOperationState; Exception error = null; // perform the load operation try { Load(state.Container, state.File, state.Action); } catch (Exception e) { error = e; } // construct our event arguments FileActionCompletedEventArgs args = new FileActionCompletedEventArgs(error, state.UserState); // fire our completion event if (LoadCompleted != null) { LoadCompleted(this, args); } // recycle our state object ReturnFileOperationState(state); // decrement our pending operation count PendingOperationsDecrement(); }