public AsyncResult( Func<AsyncCancellationToken, T> work, CancellableAsyncCallback callback = null, Object state = null )