zoukankan      html  css  js  c++  java
  • C# 基础(7)--线程

    进程与线程

    一个程序就是一个进程,进程包含线程,多个线程之间可以“并发”执行(确切的说是不停地切换),CPU是跟线程打交道的。

     

    线程是程序的一个执行流,每个线程都有之间专有的寄存器(栈指针、程序计数器等)

     

    ,但是代码区是共享的,即不同的线程可以执行同样的函数。

     

    多线程是指程序中包含多个执行流,即在一个程序中,可以同时运行多个不同的线程来执行不同的任务(代码),也就是允许单个程序创建多个并行执行的线程来完成各自的任务。

     

    线程肯定也是要执行一段代码的,所以要城市一个线程,必须先为该线程写一个方法,这个方法的代码就是该线程所要执行的代码。

     

    线程启动时,通过委托调用该方法。

     

    线程启动时,调用传过来的委托,委托就会执行相应的方法,实现线程执行方法。

     

    多线程:

    调用Thread实例的Start方法,标记该线程可以被CPU执行了,但具体时间由CPU自己决定。

     

    前台线程:(默认情况下,是前台线程)

    只有所有前台线程都关闭才能完成线程的关闭

     

    后台线程:

    只要所有的前台线程结束,后台线程自动结束

    threadFirst.ISBackGround = true;

     

    //创建线程对象,传入要线程执行的方法

                Thread threadfirst = new Thread(CountTime);//委托

                //将线程设置为后台线程,当所有前台线程结束,后台线程自动结束。

                threadfirst.IsBackground = true;

                //启动线程执行方法

                threadfirst.Start();

  • 相关阅读:
    P3469 [POI2008]BLO-Blockade
    洛谷P2342 叠积木
    洛谷 P1197 [JSOI2008]星球大战
    洛谷P1967 货车运输
    洛谷P2812校园网络【Network of Schools加强版】
    洛谷P3003 苹果交货Apple Delivery
    luogu Eat the Trees
    插头DP模板
    [NOIP2017] 宝藏
    LOJ6268拆分数
  • 原文地址:https://www.cnblogs.com/sly-tongtong/p/3688272.html
Copyright © 2011-2022 走看看