• Lesson 7: C#多线程


    C#多线程

    1、适用于:

    通过网络进行通信

    执行占用时间的操作

    区分具有不同优先级的任务

    使用户界面在执行后台任务时能快速响应用户的交互

    2、Thread类常用属性及方法

    属性:

    IsAlive:显示当前线程执行状态

    IsBackground:是否为后台进程

    Name:获取或设置线程名称

    ThreadState:获取当前线程状态

    方法:

    Thread:构造函数,线程启动时传递给线程的委托

    Abort:调用时,引发ThreadAbortException,开始终止此线程

    Join:阻止调用线程,直到某个线程终止时为止

    ResetAbort:取消当前线程请求的Abort

    Sleep:设定线程阻塞指定的毫秒数

    Start:开始执行

    3、线程的状态:

              

    4、启动线程:

      1) 创建线程实例:

           如上图所示,调用Thread类的构造方法,就会实例化一个线程实例,但未创建实际的线程,此时线程处于Unstarted状态。

           创建线程实例常用:Thread  t = new Thread(线程方法);

           并将线程实例委托执行线程的方法:void 线程方法 ()  || void 线程方法(object)

      2) 创建线程

           t.Start();

           t.Start(Object obj);

    5、暂停线程:

          Thread.sleep(1000);

     6、合并线程:

       如果一个线程 t1 在执行过程中,需要等待另一个线程t2结束后,才能继续执行,那么可以在 t1 的代码中调用 Join 方法

       例如:t2.Join();

    7、终止线程:

        强行终止线程:.Abort()

        自然终止:当委托方法结束后,线程随之结束。

        

     待续。。。

  • 相关阅读:
    Redhat7.4Python安装配置cx_Oracle
    Kafka与Zookeeper关系
    Centos7Prometheus+Granfana安装配置
    1day漏洞反推技巧实战(3)
    redis攻击篇redis写文件
    资产收集对抗子域名爆破
    ssrf漏洞利用攻击redis篇
    Spring Cloud Gateway actuator组建对外暴露RCE问题漏洞分析
    PHP/ASP.NET/ASP网站定制开发
    PHP 程序员的调试技术
  • 原文地址:https://www.cnblogs.com/1995hxt/p/4477690.html
Copyright © 2020-2023  润新知