zoukankan      html  css  js  c++  java
  • c# 线程异步处理

        public class AsyncHelper
        {
            private static readonly TaskFactory _myTaskFactory = new TaskFactory(CancellationToken.None, TaskCreationOptions.None, TaskContinuationOptions.None, TaskScheduler.Default);
    
            public static void RunSync(Func<Task> func, bool await = false)
            {
                CultureInfo cultureUi = CultureInfo.CurrentUICulture;
                CultureInfo culture = CultureInfo.CurrentCulture;
                _myTaskFactory.StartNew(delegate
                {
                    Thread.CurrentThread.CurrentCulture = culture;
                    Thread.CurrentThread.CurrentUICulture = cultureUi;
                    return func();
                }).Unwrap().ConfigureAwait(await).GetAwaiter().GetResult();
            }
    
            public static TResult RunSync<TResult>(Func<Task<TResult>> func, bool await = false)
            {
                CultureInfo cultureUi = CultureInfo.CurrentUICulture;
                CultureInfo culture = CultureInfo.CurrentCulture;
                return _myTaskFactory.StartNew<Task<TResult>>(delegate
                {
                    Thread.CurrentThread.CurrentCulture = culture;
                    Thread.CurrentThread.CurrentUICulture = cultureUi;
                    return func();
                }).Unwrap<TResult>().ConfigureAwait(await).GetAwaiter().GetResult();
            }
        }
    

      

    应用

                        if (AsyncHelper.RunSync(() => _Service.Send(req), false))//_Service.Send(req) return bool
                        {
                            
                        }
    

      

  • 相关阅读:
    17.正则表达式
    16.os模块-shutil模块-tarfile压缩模块
    15.序列化模块-时间模块-zip压缩模块
    第一章 单变量线性回归
    如何跑通MonoRTM模型的官方例子
    PHP命名规范
    js中要声明变量吗?
    php抓取网站图片源码
    InnoDB和MyISAM区别总结
    php分页代码。
  • 原文地址:https://www.cnblogs.com/panpanwelcome/p/11176794.html
Copyright © 2011-2022 走看看