当前位置: 首页 > news >正文

网站制作完成之后我们便进入了什么阶段网站的技术方案

网站制作完成之后我们便进入了什么阶段,网站的技术方案,长沙景点排行榜前十名,手机怎么提升网站流量Linux 中的线程本质 线程接口由 Native POSIX Thread Library 提供,即:NPTL 库函数 线程被称为轻量级进程 (Light Weight Process) 每一个线程在内核中都对应一个调度实体,拥有独立的结构体 (task_struct) 内核设计:一个进程对…

Linux 中的线程本质

线程接口由 Native POSIX Thread Library 提供,即:NPTL 库函数

线程被称为轻量级进程 (Light Weight Process)

每一个线程在内核中都对应一个调度实体,拥有独立的结构体 (task_struct)

  • 内核设计:一个进程对应内核中的一个结构体,对应一个进程标识
  • 引入线程:线程是内核的调度实体,在内核中必然对应一个结构体

用户模式:一个进程中存在多个线程

内核模式:每个线程是一个独立的调度实体

另一个视角

拥有多线程的进程,又被称为线程组 (谁是线程组长?)

在内核数据结构 task_struct 中存在 pid 和 tgid:

pid_t pid => 线程标识符 (Thread ID)

pid_t tgid => 线程组标识符 (Thread Group ID)

进程创建后默认拥有一个线程,即:主线程 (默认执行流)

主线程的 LWP 标识与进程标识符相同,即:主线程为线程组长

其他子线程创建后隶属于当前进程:

  • 子线程的 LWP 标识符各不相同,且与进程标识符相同
  • 子线程调用 getpid() 的结果相同 (why?)

下面的程序输出什么?为什么?

问题

对于线程来说,pthread_t 类型的标识符 与 pid_t 类型标识有什么不同?

使用 ps 命令查看线程信息

-e => Select all processes

-L => Show threads,possibly with LWP and NLWP columns

-f => Do full-format listing

ps -eLf => to get info about threads

实验程序

多线程内核模型

Linux 内核中的基本调度单位为 task_struct,即:内核中以 "任务" 作为调度的基本单位

值得思考的问题

多线程之间是否有 "父子关系" ?

答:无!

进程中只有主线程和子线程,线程之间没有 "父子关系"

主线程如果先于子线程结束会发生什么?

Linux 中主线程如果执行结束,则进程结束

进程结束则进程资源被释放,子线程被迫结束

使用 kill 命令是否能够 "杀死" 指定线程 ?

kill 命令默认发送信号 SIGTERM,而信号的目标是进程

因此,kill 任意子线程的 pid_t 将导致整个进程结束

pthread_t 究竟是什么数据类型 ?

pthread_t 是 POSIX Thread 中的接口,具体定义与系统相关

通常情况下,pthread_t 的具体定义是 一个整型值

  • Linux 中 pthread_t 的具体定义是 64 位整数 (保存地址值)
  • 其他系统中 pthread_t 直接映射为 Task ID 值
  • 对于一些特殊的系统,pthread_t 是一个结构体

Linux 多线程 API 函数

线程标识相等判断

int pthread_equal(pthread_t t1, pthread_t t2);

如果 t1 和 t2 相等,返回非 0 值,否则返回 0 值

注意:

Linux 系统编程时,可直接用 t1 == t2 的方式判断是否相等

编写可移植的多线程代码,使用 pthread_equal() 判断是否相等

http://www.yayakq.cn/news/548933/

相关文章:

  • 河南省建设资格注册中心网站搜索网站大全排名
  • 手机设计网站外包公司的人好跳槽吗
  • 软件下载网站模板移动云盘免费空间
  • 制作静态动漫网站模板seo网络营销课程
  • 网页设计网站官网健康云下载app
  • 电商网站 支付免费私人直播间 哔哩哔哩
  • 自己动手做网站教程青岛网站建站
  • 肇庆建网站阿里云学生服务器购买
  • 用dw 网站开发与设计报告佛山网站建设天博
  • 常德网站网站建设wordpress打字烟花
  • html5在网站建设中的做网站必须要公网ip
  • 搜索别人的网站是带logo的请问怎么做的凡科h5登录入口
  • 做游戏视频网站要批证吗wordpress 首页文章
  • 做美食网站首页怎么做谷歌浏览器 官网下载
  • 如何做自己的个人网站外贸推广公司
  • 自己做网站接入微信和支付宝网页浏览器网址
  • 家里公网宽带做网站要备案么免费下载app软件正版
  • 做外贸自己的公司网站创建一个网站
  • 在家百度统计网站打不开协会宣传网站开发方案
  • 免费网站模版下载wordpress主页设置错误
  • 购物网站首页分成几个模块梅县区住房和城乡规划建设局官方网站
  • 杭州制造业企业做网站建立公司需要多少资金
  • 哈尔滨市建设网站企业管理论文
  • 网站建设方案的所属行业是网站开发费属于研发费用吗
  • 网站开发提案模板东莞网站关键词优化排名
  • 电子商务网站设计的三大原则是wordpress 后台不显示
  • 潍坊云建站模板杭州煜灿网络科技有限公司网站开发
  • 曲靖做网站需要多少钱南通市建设工程安全监督站网站
  • WordPress主题站湖北省建设工程质量安全监督网站
  • 做一手楼房的网站如何打死网站