public bool TryGetHandler(out IHttpHandler handler) { var count = _collection.Count; if (count == 0) { handler = null; return(true); } else if (count == 1) { handler = _collection[0]; return(true); } else if (count == 2) { handler = new Handler2(_collection[0], _collection[1]); return(true); } else if (count == 3) { handler = new Handler3(_collection[0], _collection[1], _collection[2]); return(true); } else if (count == 4) { handler = new Handler4(_collection[0], _collection[1], _collection[2], _collection[3]); return(true); } else if (count == 5) { handler = new Handler5(_collection[0], _collection[1], _collection[2], _collection[3], _collection[4]); return(true); } else { handler = null; return(false); } }
/// <summary> /// 异步调用 /// </summary> public void DoAsynAction() { Handler1 handler1 = new Handler1(AsynDemo1); handler1.BeginInvoke(null, null); Handler2 handler2 = new Handler2(AsynDemo2); handler2.BeginInvoke("string", null, null); Handler3 handler3 = new Handler3(AsynDemo3); //handler3.BeginInvoke(null, null); IAsyncResult result3 = handler3.BeginInvoke(null, null); Handler4 handler4 = new Handler4(AsynDemo4); //handler4.BeginInvoke("string", null, null); IAsyncResult result4 = handler4.BeginInvoke("string", null, null); Handler5 handler5 = new Handler5(AsynDemo5); //handler5.BeginInvoke("", 0, null, null); IAsyncResult result5 = handler5.BeginInvoke("string", 0, null, null); }
public void Handle(Handler5 five, Handler handler, Command command) { }
public RequestHandler5 <T, R, U, I, J>?Handle(Handler5 handler) { _executor = (request, param1, param2, param3, param4, param5, mediaTypeMapper1, errorHandler1, logger1) => RequestExecutor.ExecuteRequest(() => handler.Invoke(param1, param2, param3, param4, param5), errorHandler1, logger1); return(this); }