void CompleteWorker (object state)
{
object [] args = (object []) state;
RunWorkerCompletedEventArgs e =
args [0] as RunWorkerCompletedEventArgs;
AsyncOperation async = args [1] as AsyncOperation;
SendOrPostCallback callback = delegate (object darg) {
this.async = null;
OnRunWorkerCompleted (darg as RunWorkerCompletedEventArgs);
};
async.PostOperationCompleted (callback, e);
cancel_pending = false;
}