专业网站建设品牌,18年专业建站经验,服务6000+客户--广州松河
免费热线:400-963-0016
微信咨询
|
联系我们
扫二维码关注公众号
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
位置:
广州松河
>
技术支持
> C语言线程和进程
C语言线程和进程
来源:网络整理 时间:2023/2/17 11:53:09 共
3686
浏览
当启动一个程序时,操作系统创建一个进程,并在该进程中执行程序。
一个进程包括一个或多个线程。每个线程又是一个局部进程,它以独立于其他局部进程的方式执行一个命令序列。
当进程启动时,它的主线程则成为活动线程。
这时,任何正在运行的线程都可以启动其他线程。
当进程终止时,
例如,通过在 main()函数中执行一个 return 语句或通过调用 exit()函数,
所有已开启但还未结束的线程都会被终止。
系统调度器为所有可运行的线程平均分配可用的 CPU 时间。
通常,调度器是抢占式的:它会中断正在执行的线程,给中央处理单元(CPU)留出可用的短暂时间,并将 CPU 分配给其他线程使用一段时间。
这种调度的结果是:即使是在单处理系统上,在用户面前运行的线程看上去像是在同时执行,实际上,只有在多处理器系统中,几个线程才可能真正地同时执行。
每一个进程在内存中都有自己的地址空间,并拥有独占的资源
,例如,打开的文件。一个进程中的所有线程都继承该进程的资源。最具有意义的是,在一个进程中的几个线程共享一个地址空间。这使得在一个进程中的任务切换比在不同进程间的任务切换要简单得多。
然而
,为了在不同线程间切换任务,每个线程也拥有自己的资源:包括栈存储器和 CPU 寄存器。
这些资源允许每个线程在不受其他线程干扰的条件下,处理自身的本地数据。此外,一个线程也可以具有线程专用的永久内存。
对于一个给定进程,由于它内部的所有线程均使用相同的地址空间,所以它们共享全局数据与静态数据。然而,这也意味着,同一个进程中的两个不同线程可以同时访问同一个内存单元。这种情况在 C 标准中被称为
数据竞争(data race)
,或者通常称之为
竞态条件(race condition)
。
为了防止在共享数据时出现冲突,当这些不同线程使用内存中相同位置时,程序员必须明确地同步这些不同线程的写操作或读写操作。
版权说明:
本网站凡注明“广州松河 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
相关主题:
云浮营销型网站建设方案
企业网站建设风格标准
为什么叫网站建设维护
大冶外贸购物网站建设
黄圃网站建设公司
海南建材网站建设外包
河南网站建设价格表
高端网站建设服务周到
陆丰家装网站建设
营销型网站建设哪家实惠
·上一条:
C++ vector添加(增加)元素
|
·下一条:
C++异常处理(try catch throw)完全攻略
同类资讯
备份域控制器与主域控制器的dns如何设置_服务器
热血传奇开服真的很赚钱吗_服务器
是否还未普及和量产_服务器
国内有三国题材的沙盒游戏吗_服务器
游戏版号如何备案_服务器
文明重启每天什么时候刷新服务器_服务器
dns服务器是什么的缩写_服务器
宽带连接所谓的服务器名和服务名是指什么_服务器
玩英雄联盟FPS不稳定什么原因_服务器
400错误与500错误区别_服务器
我的手机号码想改号码的话_服务器
速达财务软件帐套怎么备份_服务器
金铲铲之战怎么注销账号_服务器
为什么路由器开启无线中继后路由器进不去了_服务器
怎么下载网吧的哪个游戏大厅_服务器
两台电脑共用打印机端口怎么选择_服务器
全国12家鲲鹏服务器生产工厂名单_服务器
华为到底会不会离开深圳_服务器
我想安装300兆宽带_服务器
如果联想倒了哪家企业会迅速补上_服务器
资讯动态
公司新闻
互联网资讯
电商资讯
优化推广
技术支持
关于我们
公司简介
企业文化
服务项目
公司新闻
服务项目
网站建设
网站推广
品牌策划
移动应用
服务支持
在线咨询
服务流程
产品报价
售后服务
联系我们
代理加盟
付款方式
在线留言
联系方式
联系方式
电话:400-963-0016
邮箱:sales@itwy.com
QQ:250211130
微信:18520775521
Copyright © 广州松河信息科技有限公司 2005-2026 版权所有
粤ICP备16019765号
广州松河信息科技有限公司 版权所有
18520775521
QQ洽谈
sales@itwy.com