using System; namespace Blue { public class AsyncInvocationHandler:IAsyncInvocationHandler { private Action _onFailed; private Action _onSucceed; //call back for process success public void OnSucceed(Action onSucceed) { _onSucceed = onSucceed; } //call back for process failed public void OnFailed(Action onFailed) { _onFailed = onFailed; } void IAsyncInvocationHandler.TriggerFailed() { _onFailed?.Invoke(); } void IAsyncInvocationHandler.TriggerSucceed(T result) { _onSucceed?.Invoke(result); } } }