protected Action <T> CreateAsyncOperation <T>(Action <T> operation) { return((t) => { AsyncOper.Post(x => operation((T)x), t); }); }
protected Action CreateAsyncOperation(Action operation) { return(() => { AsyncOper.Post(x => operation(), null); }); }
protected Action <T1, T2, T3> CreateAsyncOperation <T1, T2, T3>(Action <T1, T2, T3> operation) { return((t1, t2, t3) => { AsyncOper.Post(x => { var args = (Tuple <T1, T2, T3>)x; operation(args.Item1, args.Item2, args.Item3); }, new Tuple <T1, T2, T3>(t1, t2, t3)); }); }
protected Action <T1, T2> CreateAsyncOperation <T1, T2>(Action <T1, T2> operation) { return((t1, t2) => { AsyncOper.Post(x => { var args = (Tuple <T1, T2>)x; operation(args.Item1, args.Item2); }, new Tuple <T1, T2>(t1, t2)); }); }