Example #1
0
        public static async ValueTask <T> InvokeAsync <T>(
            this UIThreadAccessorInstance accessor, Func <Task <T> > action)
        {
            await UIThread.Bind();

            return(await action().ConfigureAwait(false));
        }
Example #2
0
        public static async ValueTask InvokeAsync(
            this UIThreadAccessorInstance accessor, Func <Task> action)
        {
            await UIThread.Bind();

            await action().ConfigureAwait(false);
        }
Example #3
0
        public static async ValueTask <T> InvokeSyncOnAsync <T>(
            this UIThreadAccessorInstance accessor, Func <T> action)
        {
            await UIThread.Bind();

            return(action());
        }
Example #4
0
        public static async ValueTask InvokeSyncOnAsync(
            this UIThreadAccessorInstance accessor, Action action)
        {
            await UIThread.Bind();

            action();
        }
Example #5
0
 public static async ValueTask <TryInvokeAsyncResult <T> > TryInvokeAsync <T>(
     this UIThreadAccessorInstance accessor, Func <Task <T> > action)
 {
     if (await UIThread.TryBind())
     {
         return(new TryInvokeAsyncResult <T>(true, await action().ConfigureAwait(false)));
     }
     else
     {
         return(new TryInvokeAsyncResult <T>(false, default !));
Example #6
0
 public static async ValueTask <bool> TryInvokeSyncOnAsync(
     this UIThreadAccessorInstance accessor, Action action)
 {
     if (await UIThread.TryBind())
     {
         action();
         return(true);
     }
     else
     {
         return(false);
     }
 }
Example #7
0
        public static async ValueTask <bool> TryInvokeAsync(
            this UIThreadAccessorInstance accessor, Func <Task> action)
        {
            if (await UIThread.TryBind())
            {
                await action().ConfigureAwait(false);

                return(true);
            }
            else
            {
                return(false);
            }
        }