多线程的使用与解释

news2024/9/25 21:21:18

多线程

文章目录

  • 多线程
    • 什么是多线程
    • 线程特点
    • 线程的使用
      • 线程的创建
      • 线程ID获得
      • 线程终止
      • 线程等待
      • 进程分离

什么是多线程

是资源调用的最小单位。一个进程内部的控制序列。线程是调度的基本单位。

线程有共享进程的数据,也有自己 的一部分数据
在这里插入图片描述

线程特点

1,性能消耗小,创建代价小。

2,跟随进程同时进行存活

3,健壮性比较低,缺少保护

4,编程难度提高

5,多个线程享用一个地址空间

线程的使用

线程的创建

pthread_t tid;
pthread_create(tid,nullptr,要跑的函数,*arg);

成功返回0,失败返回错误码。这里返回的错误码可以使用strerror函数进行处理,可以输出相应的错误信息。不会返回错误信息到errno上面去。

image-20230411154850925

线程ID获得

int pid = pthread_self();

这样可以获得线程的ID

image-20230411154804187

线程终止

pthread_exit();

只可以进行自身调用进行终止

image-20230411155409878

线程等待

pthread_join(tid,nullptr);

进行之前线程推出的没有释放的资源进行释放,让其他的进程可以进行资源的复用(防止出现内存泄露)

image-20230411155500718

进程分离

pthread_detch();

进行线程分离工作之后,线程的存在活时间就不是由于主进程所决定的了,就是接受OS的管理进行退出等操作。可以线程对于自己进行退出,也可以其他的线程或者进程对于其他的线程进行分离。

image-20230411160623674

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/430450.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电脑回收站删除的文件还能找回吗 电脑回收站删除的文件怎么恢复

电脑回收站是保护电脑文件和数据的重要屏障,被删除的文件数据在这里会被保存很久,直到被用户永久删除。为了保证电脑系统的流畅运行,我们会对电脑回收站进行清理。在一系列的操作过后,我们可能会发现自己误删了重要文件。那么电脑…

Leetcode135. 分发糖果

Every day a leetcode 题目来源:135. 分发糖果 解法1:贪心 首先把所有孩子的糖果数初始化为1。 从左往右遍历一遍,如果右边孩子的评分比左边的高,则右边孩子的糖果数更新为左边孩子的糖果数加1。 再从右往左遍历一遍&#xf…

匈牙利算法学习记录

匈牙利算法主要用来解决两个问题:求二分图的最大匹配数和最小点覆盖数。 匈牙利算法事实上有两个算法,分别解决指派问题和二分图最大匹配求解问题,此处算法指求解指派问题的匈牙利算法。 处理流程 方法一 具体如何实现呢? 代码…

【数据结构】- 初识数据结构之时间复杂度(上)

文章目录前言一、什么是数据结构二、什么是算法三、算法效率3.1如何衡量一个算法的好坏3.2算法复杂度四、时间复杂度4.1时间复杂度的概念4.2大O的渐进表示法4.3常见时间复杂度计算举例总结前言 努力不是为了和别人一较高下 而是为了让生活多一种可能 别让世俗淹没生活的浪漫和…

MySQL:基本常识介绍、操作数据库、操作数据库中的表、操作表中的数据(增删改查)、MySQL 函数

文章目录Day 02:一、常见的 SQL 语句二、基本常识1. 数据库的列类型2. 数据库的字段属性三、操作数据库1. 操作数据库2. 操作数据库中的表(1)创建表:CREAT(2)修改表:ALTER(3&#xf…

肖 sir_就业课__014python讲解

python讲解 一、python梳理 1、python 数据类型有哪些? 字符、列表、元组、字典、集合 2、列表、元组、字典、集合的区别? 3、python中函数? (1)自定义函数 def 函数名() (2&#…

聊聊架构方案选择

大家好,我是易安! 在完成备选方案设计后,如何挑选最终的方案是一个很大的挑战,因为每个备选方案都是可行的。但是,没有哪个备选方案是完美的,因为每个方案都存在一些缺点或风险。此外,评价备选方…

薅!无魔法无限量GPT-4安卓App安装包;Notion AI从入门到精通;最全大模型进展汇总;雇AI给我打零工 | ShowMeAI日报

👀日报&周刊合集 | 🎡生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! 🤖 『大模型进展汇总 (持续更新至4月17日)』应该是最全总结了吧 ShowMeAI资料编号 No.T001 (进入社群获取高清PDF文件&#x…

AI已经解锁自动化能力 | 颠覆商业模式和劳动力市场

AI已经解锁自动化能力,将颠覆商业模式和劳动力市场。目前AutoGPT的开源项目: BabyAGI、Auto-GPT、AgentGPT、TeenagerAGI、Jarvis。 AutoGPT原理: 3个GPT4协同合作,一个GPT4负责分解目标创建任务,另一个GPT4负责分配…

面试必问的CAS原理你会了吗?

目录 一、什么是CAS? 二、CAS 基本原理 三、CAS 在 Java 语言中的应用 四、CAS 的问题 1、典型 ABA 问题 2、自旋开销问题 3、只能保证单个变量的原子性 五、有态度的总结 在并发编程中我们都知道i操作是非线程安全的,这是因为 i操作不是原子操作…

Jmeter常用断言之XPath断言

一般情况下,使用响应断言和json断言即可满足绝大部分断言需求,Xpath断言主要适用于:返回的数据格式为html或xml。 XPath是W3C的一个标准。XPath是一种表达式语言,它使用路径表达式来选取 XML 文档中的节点或节点集。XPath断言和XP…

Linux中jar包的启动脚本解析及问题

搭建运行环境时,把jar包打好外,我们还需要一个启动脚本,新建一个文件start.sh,内容如下: ps -ef | grep dvmrms | grep -v grep | awk {print $2} | xargs kill -9nohup java -jar dvmrms.jar >/dev/null 2>&1 &sl…

leetcode876.链表的中间节点

个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【LeetCode】 目录题目链接解法1:快慢指针解题代码题目链接 题目链接 解法1:快慢指针 解法一:快慢指…

opencv实践项目-修改表格缺失轮廓

目录 1. 背景2. 修复步骤2.1 图像灰度化,并进行高斯模糊2.2 对图像进行阀值处理2.3 查找轮廓2.4 利用存储的值了解表格的位置2.5 提取所有的水平线和垂直线2.6 合并垂直和水平的两个模版 3. 完整代码 1. 背景 如果大家在输入图像时,看到的第二行中的单元…

Laravel使用JWT

开始安装jwt (本次安装不建议直接在项目中安装及使用) 1.composer 安装jwt composer require tymon/jwt-auth 1.0.0-rc.1 2.在config 文件夹的app.php 中注册服务提供者 providers > [Tymon\JWTAuth\Providers\LaravelServiceProvider::class, ]…

计算机网络考试复习——第一章 1.5 1.6

1.5 计算机网络的类别 1.5.1计算机网络的定义: 系统集合,连接起来,协议工作,资源共享 计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(例如&#xff0…

【Linux问题处理】Aborted (core dumped)报错python

文章目录一、命令检查1.python执行py文件2.gdb执行py文件二、进程检查1.检查所有python程序2.使用gdb检查进程三、core文件检查1.开启core文件存储能力2.core文件存储位置3.gbd查看core文件首先需要在ubuntu系统安装gdb工具。 sudo apt-get install gdbgdb是c的工具&#xff0…

SSM框架整合流程与原理解读(附源码链接)

本文参考黑马教程,对 MyBatis、Spring、SpringMVC 三个框架进行逐步整合,并对整合后事务失效原因进行总结。 源码链接:https://download.csdn.net/download/weixin_43819566/87690821 文章目录 一、搭建整合环境1.1 整合项目说明1.2 整合的思…

通过KNN分类模型预测股票涨跌,然后与基准收益画图对比

目录 1 获取数据 2 特征工程:定义一个用于分类的函数 3 特征工程:生成训练数据 4 根据训练数据对分类模型进行拟合,并给出得分 5 使用训练完成的分类模型进行数据预测 6 定义几个有用的函数 7 生成基准收益和策略收益对比结果 记录一下…

排序算法——快速排序(C语言多种实现及其优化策略)

快速排序总述快速排序递归框架单趟快速排序**hoare法****挖坑法**前后指针法快排改进key的选取**随机选key****三数取中**小区间优化**面对多个重复数据时的乏力**总述 快速排序可以说是排序界的大哥的存在,在c库中的qsort和c库中的sort两个排序底层都是用快速排序…