多线程Part1

线程

  线程是操作系统能够进行运算调度的最小单位,他被包含在进程之中,是进程中的实际运作单位

  一个线程就是一个指令流,将指令流中的一条条指令以一定顺序交给CPU执行

  线程通信比较简单,例子就是多个线程可以访问同一个共享变量,因为它们共享线程内的内存

  理解:应用软件中互相独立,可以同时运作的功能

进程

  进程是程序的基本执行实体,程序由指令和数据组成,但指令要运行,数据要读写,必须把指令交给cpu,数据交给内存,运行过程中可能还需要磁盘、网络

  进程就是用来加载指令、管理内存、管理IO

  进程可以视为程序的一个实例,大部分程序可以同时运行多个实例进程(记事本、画图),也有的只能启动一个(网易云音乐)

  在windows中进程是不活动的,只是线程的容器

进程通信比较复杂——同一台计算机的通信叫做IPC

不同计算机的进程通信,需要通过网络,并遵循协议,例如HTTP

多线程应用场景

软件中的耗时操作:拷贝、迁移大文件;加载大量的资源文件

所有的聊天软件

所有的后台服务器

 

总结

线程上下文切换成本比进程上下文切换低

有了多线程就可以让程序同时做多件事情

作用:提高效率

应用场景:只要你想让多个事情同时运行就需要用到多线程

 

posted @   名泽  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?

阅读目录(Content)

此页目录为空

点击右上角即可分享
微信分享提示