- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
并发概念(计算机)
一、串行程序、并发程序、并行程序
串行程序:指只能被顺序执行的指令列表。
并发程序:并发程序属于程序,其内是由多个分(串行程序)组
合在一起,这些分组合在一起构成了一个整体,叫做并发程序。也
叫单元
并行程序:指可以在并行的硬件上(CPU,服务器),运行的并发程
序。
二、并发系统、并行系统
并发系统:程序和程序之间是通过协议协商一致后形成通信。并发系
统就是多个并发程序间构成的,看作是一个系统。
并行系统:指并发系统以并行的方式存在。每个并发系统中的程
序,很有可能会署在多个并行硬件上(服务器)同时运行,也叫做
分布式系统。
三、并发程序内交互
1.什么是并发程序的内部交互?
并发程序中存在多个串行程序,这些串行程序之间可能会存在数据交
互的需求。比如多个串行程序对一个共享资源进行访问(数据库,消
息队列);又或者在它们之间传递一些数据。
在这些需求的环境下,协调它们的执行,就要涉及到同步。
2.同步的作用
避免在并发访问共享资源时发生的冲突,可以有条不紊的传递数据。
3.同步的原则
当程序要访问一个共享资源时,就必须请求该共享资源并获取对应的
访问权;反之如果程序不再需要一个共享资源,就要放弃该资源的访
问权。(释放资源,Close())
而应该等到其释放资源后在进行访问(锁)。结论:一个共享资源在
同一时刻内,只能被一个程序占用。
同步会导致系统资源的浪费,耦合性太强。所以有了异步通信的思想。
4.异步通信
发送方可以不加延迟的将消息发送出去,接收方也不会造成发送方的
等待。(解耦)
数据会被临时存储在一个通道缓存(IPC)的通道中。通道缓存是一
种特殊的共享资源,可以被多个程序使用。接收方准备就绪后无需知
道发送方,直接从通道缓存中获取数据。
多线程编程概念(计算机)
一、什么是多线程编程
POSIX:可移植性的Unix操作系统接口。
NPTL:Linux操作系统的最新线程库。
多线程编程是一种比多进程编程更灵活,更高效的编程方法。在
Linux系统中提供了一个以POSIX为标准定义的线程(简称:POSIX
线程)为中心的各种系统调用。POSIX也是go并发编程在linux系
统下真正使用的内核接口,也就是NPTL本地POSIX线程库。
二、什么是线程
线程可以视为进程中的控制流,一个进程中至少要包含一个线程。
因为一个进程中至少要一个控制流持续运行。所以第一个线程会随着
其进程的启动而创建,这个线程也被称之为主线程。
一个进程中可以存在多个线程,这些线程是由当前进程中存在的线
程创建出来的,而创建的方就是系统调用。更准确的说是调用
pthread_create函数。
拥有多个线程的进程可以并发执行多个任务,并且即使某个线程被
阻塞也不会影响到进程中其它任务的执行。线程会大大提升程序的响
应效率和吞吐量
线程不能独立于进程之上,线程的生命周期不能超过其所在进程的
生命周期。
三、如何实现一个线程
通过系统调用来及制线程。线程与进程的父子家族关系树结构不
同,线程之间的关系都是平等的。它们之间不存在层级关系,任何线
程都可以对同一进程中的其它线程进行有效的管理。其中管理分为5
种:
pthread_create创建线程
pthread_cancel终止线程
pthreadjoin连接已经终止线程
pthread_detach分离线程
pthread_exit彻底退出主线程
3-1V线程TID标识
和进程一样,线程也有属于自己的ID,叫做TID。但与进程不同
的是,线程ID在系统内中并不唯一,
您可能关注的文档
- 八年级数学上学期期中考试重难点题型(举一反三)(原卷版).pdf
- 八中“双减”工作方案初稿.pdf
- 八年级数学下册专题181 平行四边形的性质(举一反三)(人教版).pdf
- 巴中市国家投资公路工程建设项目中标候选人评定分离施工招标文件标准文本(2024年版).pdf
- 巴中职业技术学院教育学院学生顶岗实习手册.pdf
- 备考2024贵州省初级经济师之初级经济师财政税收押题练习试卷B卷附答案.pdf
- 备考2024海南省初级经济师之初级经济师财政税收能力检测试卷A卷附答案.pdf
- 备考2024河南省初级经济师之初级经济师财政税收自我检测试卷A卷附答案.pdf
- 备考2024湖北省初级经济师之初级经济师财政税收考前冲刺试卷A卷含答案.pdf
- 板安装承包合同标准协议书.pdf
- 2024-2025学年北京市人教版六年级下册小升初备考真题分类汇编专题01 数的认识及运算数学试卷[含答案].pdf
- 2024-2025学年云南省人教版六年级下册小升初备考真题分类汇编专题04 解答题数学试卷[含答案].pdf
- 2025学年云南省人教版六年级下册小升初备考真题分类汇编专题01 选择题数学试卷[含答案].pdf
- 2024-2025学年冀教版六年级下册小升初全真模拟数学试卷(基础01)[含答案].pdf
- 2024-2025学年北京市人教版六年级下册小升初备考真题分类汇编专题03 式与方程数学试卷[含答案].pdf
- 2024-2025学年广东省广州市人教版六年级下册小升初备课真题分类汇编专题04 数的运算一数学试卷[含答案].pdf
- 2024-2025学年内蒙古自治区人教版六年级下册小升初备考真题分类汇编专题03 计算题数学试卷[含答案].pdf
- 2024-2025学年人教版六年级下册小升初真题分类汇编第四章、式与方程数学试卷[含答案].pdf
- 2024-2025学年山东省人教版六年级下册小升初备考真题分类汇编专题04 常见的量、图形的认识与测量数学试卷[含答案].pdf
- 2025学年浙江省人教版六年级下册小升初备考真题分类汇编专题01 数与代数数学试卷[含答案].pdf
文档评论(0)