public AsyncInvocationInfo(SequentialInvoker owner, Action action, AsyncCallback userCallback, object stateObject) { Contract.Requires(owner != null); Contract.Requires(action != null); this.owner = owner; this.action = action; this.userCallback = userCallback; this.asyncState = stateObject; }