же самый Action<T> но выполняемый в главном треде.
Потом я его в одном месте просто прокидываю внутри метода в подписку дальше, вроде:
Action<T> callback => Subscribe(callback.CreateMainThreadCaller())
Но в другом случае он у меня не приходит в качестве аргумента, а я хочу просто передать метод класса, соответственно с него уже экстеншн не вызовешь. Приходится что делать, либо писать статик хелпер, который вызовет экстешн, либо там где подписываюсь заранее делать:
Action<T> a = Method
Есть еще варианты получше? Переписать все на F# поможет?
Напиши глобальную функцию a, которая сделает Action a(Action x) => x; И в месте вызова пиши вместо Subscribe(Method.CreateMainThreadCaller()); // doesn't compile вот так: Subscribe(a(Method).CreateMainThreadCaller());
Обсуждают сегодня