/// <summary> /// Runs the event dispatcher and awaits for it to complete before returning the results for dispatched events asynchronously. /// </summary> /// <typeparam name="T">The return type.</typeparam> /// <param name="dispatcher">The dispatcher.</param> /// <param name="function">The function to call.</param> /// <returns>The <see cref="Task" /> object representing the asynchronous operation.</returns> public static Task <T> RunAndAwaitAsync <T>(this CoreDispatcher dispatcher, Func <T> function) => dispatcher.RunAndAwaitAsync(CoreDispatcherPriority.Normal, function);
/// <summary> /// Runs the event dispatcher and awaits for it to complete before returning the results for dispatched events asynchronously. /// </summary> /// <param name="dispatcher">The dispatcher.</param> /// <param name="asyncAction">The async action to call.</param> /// <returns>The <see cref="Task" /> object representing the asynchronous operation.</returns> public static Task RunAndAwaitAsync(this CoreDispatcher dispatcher, Func <Task> asyncAction) => dispatcher.RunAndAwaitAsync(CoreDispatcherPriority.Normal, asyncAction);
/// <summary> /// Runs the event dispatcher and awaits for it to complete before returning the results for dispatched events asynchronously. /// </summary> /// <typeparam name="T">The return type.</typeparam> /// <param name="dispatcher">The dispatcher.</param> /// <param name="asyncFunction">The async function to call.</param> /// <returns>The <see cref="Task" /> object representing the asynchronous operation.</returns> public static Task <T> RunAndAwaitAsync <T>(this CoreDispatcher dispatcher, Func <IAsyncOperation <T> > asyncFunction) => dispatcher.RunAndAwaitAsync(CoreDispatcherPriority.Normal, asyncFunction);