• 异步


    //1.异步调用
    //带参
    Action<object> action=(obj)=>method(obj);
    action.BeginInvoke(obj,ar=>action.EndInvoke(ar),null);
    //不带参
    Action action=()=>method();
    action.BeginInvoke(ar=>action.EndInvoke(ar),null);
    
    //2.异步调用
    public class AsyncThread
        {
            /// <summary>
            /// 异步执行
            /// </summary>
            /// <param name="method"></param>
            public static void Run(AsynsProp.ProcessTask method)
            {
                AsynsProp at = new AsynsProp();
                at.Start(method);
            }
        }
        public class AsynsProp
        {
            public delegate void ProcessTask();
            /// <summary>
            /// 使用委托做参数执行外面的代码
            /// </summary>
            /// <param name="processTask"></param>
            public void Start(ProcessTask processTask)
            {
                if (processTask != null)
                {
                    processTask.BeginInvoke(new AsyncCallback(End), processTask);
                }
            }
            /// <summary>
            /// Ends the long running process.
            /// </summary>
            /// <param name="result">The result.</param>
            public void End(IAsyncResult result)
            {
                ProcessTask processTask = (ProcessTask)result.AsyncState;
                processTask.EndInvoke(result);
            }
        }
    

      

  • 相关阅读:
    runc create container 流程分析
    cri-o pod 创建源码分析
    hyperstart 容器创建流程分析
    MIT jos 6.828 Fall 2014 训练记录(lab 4)
    python 邮件发送 脚本
    jvm: 理解gc日志
    jvm:垃圾收集器
    GC 垃圾收集
    jvm结构
    Java transient关键字使用小记
  • 原文地址:https://www.cnblogs.com/XuPengLB/p/7446842.html
Copyright © 2020-2023  润新知