10、线程文化

简介: 1、在Linux2.2内核中,并不存在真正意义上的线程。当时Linux中常用的线程pthread实际上是通过进程来模拟的,也就是说Linux中的线程也是通过fork()创建的“轻”进程,并且线程的个数也很有限,最多只能有4096个进程/线程同时运行。

1、在Linux2.2内核中,并不存在真正意义上的线程。当时Linux中常用的线程pthread实际上是通过进程来模拟的,也就是说Linux中的线程也是通过fork()创建的“轻”进程,并且线程的个数也很有限,最多只能有4096个进程/线程同时运行。

2、Linux2.4内核消除了这个线程个数的限制,并且允许在系统运行中动态地调整进程数上限。当时采用的是LinuxThread线程库,它对应的线程模型是“一对一”线程模型,也就是一个用户级线程对应一个内核线程,而线程之间的管理在内核外的函数库中实现

3、在Linux内核2.6之前的版本中,进程是最主要的处理调度单元,并没支持内核线程机制。Linux 2.6内核支持clone()系统调用,从而实现共享地址空间的进程机制。因而Linux系统在1996年第一次获得线程的支持,当时所使用的函数库被称为LinuxThread。该函数库就使用clone()系统调用实现内核级的线程机制,在此前的Linux版本中在用户层实现POSIX线程库。

    由Red Hat主导的本地化POSIX线程库(Native POSIX Thread Library,简称为NTPL),现在已经成为GNU C函数库的一部分,同时也成为Linux线程的标准。

4、线程属性

1)绑定属性

    Linux中采用“一对一”的线程机制,也就是一个用户线程对应一个内核线程。绑定属性就是指一个用户线程固定地分配给一个内核线程,因为CPU时间片的调度是面向内核线程(也就是轻量级进程)的,因此具有绑定属性的线程可以保证在需要的时候总有一个内核线程与之对应。而与之对应的非绑定属性就是指用户线程和内核线程的关系不是始终固定的,而是由系统来控制分配的。

2)分离属性

    分离属性是用来决定一个线程以什么样的方式来终止自己。在非分离情况下,当一个线程结束时,它所占用的系统资源并没有被释放,也就是没有真正的终止。只有当pthread_join()函数返回时,创建的线程才能释放自己占用的系统资源。而在分离属性情况下,一个线程结束时立即释放它所占有的系统资源。这里要注意的一点是,如果设置一个线程的分离属性,而这个线程运行又非常快,那么它很可能在pthread_create()函数返回之前就终止了,它终止以后还就可能将该线程号和系统资源移交给其他的线程使用,这可能会引起错误。

5、互斥量本质是一把锁,提供对共享资源的保护访问。

6、二进制信号量与互斥锁的区别

1)mutex:谁获得,谁释放,而信号量可以由其他线程释放。

2)mutex初始值为1,而信号量可01

7、线程与轻进程

8、linux中使用进程实现线程,所以新创建的线程和源线程进程号可能不同。

wps_clip_image-9999

目录
相关文章
|
1月前
|
编译器 API C语言
C/C++ 线程超详细讲解(系统性学习day10)
C/C++ 线程超详细讲解(系统性学习day10)
|
2月前
|
Java API 开发者
高逼格面试:线程封闭,新名词√
高逼格面试:线程封闭,新名词√
33 0
|
存储 缓存 并行计算
|
存储 Java 程序员
一个线程的打工故事
一个线程的打工故事
93 0
|
安全 Java 数据库连接
人手一支笔:ThreadLocal(怎么优化多线程中的锁?)
人手一支笔:ThreadLocal(怎么优化多线程中的锁?)
164 1
人手一支笔:ThreadLocal(怎么优化多线程中的锁?)
|
算法 数据库
线程:臣妾不止能抢资源还能合作共赢
大家好,我是指北君。 前几天指北君的朋友小 B,写了一个导出 excel 下载太慢被客户嫌弃了。
线程:臣妾不止能抢资源还能合作共赢
|
Web App开发 移动开发 安全
汲取 IE6、IE8 消亡的经验,如何“杀死”IE11?
  我们大家熟悉的 IE 浏览器经过更新换代,目前已经更新到 IE11,而程序员多年唠叨的“IE 必须死”如今似乎要成为现实了。本文将回顾 IE6 和 IE8 消亡的历史,预测如何更好地“干掉” IE11。
151 0
|
存储 语音技术 iOS开发
知识工作者的全套手艺
知识工作者的全套手艺
130 0
知识工作者的全套手艺
|
人工智能 定位技术 vr&ar
元宇宙与教育公平
科幻作家、童行书院创始人郝景芳通过本篇内容为读者阐述了她对于元宇宙的看法以及元宇宙带给教育领域的改变与实践。
663 414
元宇宙与教育公平
|
Java 开发者
竞争抢答|学习笔记
快速学习 竞争抢答