线程与进程

基本概念

  • 进程:系统中正在运行的一个应用程序,资源分配的最小单位。
  • 线程:线程是进程中的一个执行单元,负责当前进程中程序的执行。程序的执行的最小单位。
  • 一个进程中至少有一个线程,也可以有多个线程,如果有多个线程,这个应用程序也可称为多线程程序。
  • 线程主要由CPU寄存器、调用栈、线程本地存储器(Thread Local Storage,TLS),组成的。
    CPU寄存器:主要记录当前线程所执行的状态;
    调用栈:维护线程所调用的内存与数据;
    TLS:存放线程的状态信息;
  • 单线程程序与多线程程序;
    单线程程序:多个任务只能依次执行;
    多线程程序:多个任务可以同时执行;
  • 多线程优点: (1)可以同时完成多个任务,适当提高程序的执行效率; (2)能适当提高资源利用率(CPU、内存利用率);

程序的运行原理

前面说了程序的执行靠线程。那CPU对线程的处理是怎样的呢?一般分为两种。
(1)分时调度
所有线程轮流使用CPU的使用权,平均分配给每个线程占用CPU的时间。
(2)抢占式调度
优先让优先级高的线程使用CPU,如果线程的优先级相同,那么会随机选择一个线程处理(线程的随机性)。

多线程的初步理解的例子(C#):
用应用命名空间:

using System.Threading;
        static void Main(string[] args)
        {
            Thread thread = new Thread(Thread1);
            thread.Start();
            Console.ReadKey();
        }
        static void Thread1()
        {
            Console.WriteLine("这是一个无参数的方法");
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值