 API and a blocking wait with a timeout. Wait is now signaled
  and there's no CPU spin waiting for completion of an asynchronous API call.
 </p>
 <pre lang="cs">public class VMWareJobCallback : ICallback
{
    #region ICallback Members

    private EventWaitHandle _jobCompleted = new EventWaitHandle(
         false, EventResetMode.ManualReset);

    public void OnVixEvent(IJob job, int eventType, IVixHandle moreEventInfo)
    {
        switch (eventType)
        {
            case VixCOM.Cons