Exemplo n.º 1
0
 public static async Task Run(this IsAsyncRunning isAsyncRunning, Action sync, Func <Task> asyncFunc)
 {
     if (isAsyncRunning.IsAsync)
     {
         await asyncFunc();
     }
     else
     {
         sync();
     }
 }
Exemplo n.º 2
0
        public static async Task Foo(IsAsyncRunning isSync)
        {
            var curent = Thread.CurrentThread.ManagedThreadId;

            for (int i = 0; i < 100; i++)
            {
                var query = 0;

                await isSync.Run(GetIntSync, GetInt);

                if (curent != Thread.CurrentThread.ManagedThreadId)
                {
                    var dddd = 0;
                }
            }
        }
Exemplo n.º 3
0
 public static async Task <T> Run <T>(this IsAsyncRunning isAsyncRunning, Func <T> sync, Func <Task <T> > asyncFunc)
 {
     return(isAsyncRunning.IsAsync ? await asyncFunc() : sync());
 }