public void Start() { if (IsStarted) { return; } State = RequesterState.RequestStarting; AppModel.AttachConversation(this); if (IsAutoRecoverable) { Peer.AddAutoConnectRequester(this); } PostPendableAction(OnInitRequest, timeOut , () => { RequestTimeouted?.Invoke(); //如果请求超时了,回滚到初始状态。 State = RequesterState.Attached; }); }
internal virtual void End() { timer?.Stop(); AppModel.RemoveConversation(this); }
public static AppModel Init(Env container) { _instance = new AppModel(container); return(_instance); }