public object EndInvoke(IAsyncResult result) { TkDebug.AssertArgumentNull(result, "result", this); WorkItem workItem = result.Convert <WorkItem>(); result.AsyncWaitHandle.WaitOne(); return(workItem.MethodReturnedValue); }