Esempio n. 1
0
        /// <summary>
        /// Funkce, která se má provést na pozadí
        /// </summary>
        /// <typeparam name="TResult">Návratový typ funkce</typeparam>
        /// <param name="workFunction">Funkce</param>
        /// <param name="uiDispatcher">UI dispatcher z STA vlákna</param>
        /// <returns></returns>
        public static IBackgroundExecutorFunction <TRes> Do <T, TRes>(Func <T, TRes> workFunction, T param, Dispatcher uiDispatcher)
        {
            var result = new BackgroundExecutor <TRes>(uiDispatcher);

            if (workFunction != null)
            {
                result.m_worker = () => workFunction.Invoke(param);
            }

            return(result);
        }
Esempio n. 2
0
 /// <summary>
 /// Funkce, která se má provést na pozadí
 /// </summary>
 /// <typeparam name="T">Typ parametru funkce</typeparam>
 /// <typeparam name="TResult">Návratový typ funkce</typeparam>
 /// <param name="workFunction">Funkce</param>
 /// <param name="param">Parametr funkce</param>
 /// <param name="uiDispatcher">UI dispatcher z STA vlákna</param>
 /// <returns></returns>
 public static IBackgroundExecutorFunction <TResult> Do <T, TResult>(Func <T, TResult> workFunction, T param, Dispatcher uiDispatcher)
 {
     return(BackgroundExecutor <TResult> .Do(workFunction, param, uiDispatcher));
 }