学习:线程基础

一、协程、进程和线程

1.协程:英文名是 Coroutine, 又称为微线程,是一种用户态的轻量级线程。协程不像线程和进程那样,需要进行系统内核上的上下文切换,协程的上下文切换是由程序员决定的。(详见博客收藏—Linux分类)
2.进程:一组有序指令+数据+资源的集合。
3.线程: 线程是进程内部的一条执行序列(执行流),一个进程至少包含一条线程-------main函数所代表的执行序列,称之为主线程,可以通过线程库创建其他线程------函数线程。

二、线程基础

1.函数调用和函数线程
在这里插入图片描述
2.线程的实现方式
(1)内核级线程
在这里插入图片描述
(2)用户级线程:线程维护在用户态中,内核态中没有。
(3)混合级线程:线程一部分在用户态维护,另外一部分在内核态维护。
3.在Linux系统上如何使用多线程-----》线程库(libpthread.so)
在这里插入图片描述
注意:gcc编译链接时要加上动态库libpthread.so,否则会显示无法定义。
(例 --》正确命令:gcc -o pthread pthread.c -lpthread)
执行程序pthread,如下:
在这里插入图片描述
4.线程的有关操作函数
(1)
在这里插入图片描述
(2)
在这里插入图片描述
(3)
在这里插入图片描述
5.进程和线程的区别(这里只有部分区别
在这里插入图片描述
6.创建线程的函数的传参方式
在这里插入图片描述
7.多线程共享(见下图)
在这里插入图片描述
8.线程同步:多线程是并发执行,但是在访问临界资源时,需要线程按照一定的顺序区访问。
相关涉及:
在这里插入图片描述
9.互斥锁的使用
在这里插入图片描述
10.例题
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值