【Linux】线程的几种退出方法(知识点小记)

线程的几种退出方法:

方法参数介绍头文件功能区别
return stutus;status//程序退出的返回值--返回到上一级主调函数

普通线程执行return,只退出当前线程

主函数中执行return,会退出进程,并释放所有线程

exit(int status);status//程序退出的返回值#include<stdlib.h>关闭所有文件,终止正在执行的进程

不论在哪里执行,都会退出整个进程

所以多线程开发要谨慎使用该函数

pthread_exit(void* value_ptr);value_ptr//程序退出的返回值,可以传NULL#include<pthread.h>退出线程不论是主线程还是普通线程,执行该函数都不会影响进程中的其他线程,只会退出当前线程
pthread_cancal(pthread_t tid);tid//线程的tid#include<pthread.h>使用cancel取消事件,退出目标线程任意线程调用该函数可以退出任意线程,哪怕是普通线程使用该函数退出主线程

PS:  pthread库不是Linux系统默认的库,而是属于NPTL线程库,NPTL线程库存放在用户层,连接时需要使用静态库libpthread.a,所以在线程函数在编译时,需要连接库函数,如用gcc,使用格式为:    gcc 文件名 -l pthread -o 编译文件名

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

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

相关文章

【Vivado HLS Bug】Ubuntu环境下Vivado HLS导出IP报错:HLS ERROR: [IMPL 213-28]

Export IP Invalid Argument / Revision Number Overflow Issue (Y2K22) (xilinx.com)一.问题描述&#xff1a; 在Ubuntu20.04环境中使用Vivado HLS导出IP时报错&#xff1a;HLS ERROR: [IMPL 213-28] 二.解决方法&#xff1a; 1.从如下链接中下载官方补丁Export IP Invalid…

Angular知识点系列(1)-每天10个小知识

目录 1. Angular工作原理和与其他前端框架的区别2. 使用Angular的经验和最喜欢的特性3. 使用的最复杂的Angular组件或指令4. Angular的依赖注入系统和示例5. Angular的模块和组件生命周期6. 使用Angular路由和路由保护7. 在Angular应用中实现延迟加载8. 处理Angular应用中的状态…

1、资源包下载

1 、百度云盘永久下载地址 : 链接&#xff1a; https://pan.baidu.com/s/13pBco75qXU6bLxlTtZ29TQ 提取码&#xff1a; ixkg 2 、官方下载地址&#xff1a; https://dev.mysql.com/downloads/mysql/ 3 、注意&#xff1a;下载时候要选择自己的系统和对应的电脑 CPU 位数&a…

【Interview】想法合集

i2i算法概述 - 皓轩的文章 - 知乎 i2i相比u2i的优点&#xff1b; 统计召回与向量召回的区别&#xff1a; i2i算法的目的是计算两个item之间的相似度。主要有两大类型&#xff0c;分别是基于统计的算法、基于embedding的算法。区别在于是否线上可以无限召回&#xff0c;比如基…

docker搭建nginx+php-fpm

docker run --name nginx -p 8898:80 -d nginx:1.20.2-alpine# 将容器nginx.conf文件复制到宿主机 docker cp nginx:/etc/nginx/nginx.conf /usr/local/nginx/conf/nginx.conf# 将容器conf.d文件夹下内容复制到宿主机 docker cp nginx:/etc/nginx/conf.d /usr/local/nginx/conf…

mysql sql语句遍历树结构

mysqlsql语句遍历树结构 MySQL SQL语句遍历树结构实现步骤 理解树结构和遍历算法 在开始之前&#xff0c;我们首先需要了解什么是树结构以及如何遍历树结构。树结构是一种常用的数据结构&#xff0c;由各个节点和节点之间的关系构成。树结构的一个重要应用是表示具有层级关系…

Kotlin-Java 互操作指南

官网地址 https://developer.android.google.cn/kotlin/interop?hlzh-cn 脑图

fico入门基础

Fico模块 会计主体一般为公司法人 分公司不算一个会计主体 分公司上金融中心 子公司会算一个会计主体 子公司上公司代码 会计期间:就是会计会一个期间结算一次(一般为一个月结算一次)(不同国家的快递期间起点会有不同;如日本四月份为第一个快递期间,三月份为第十二个快递期…

【前端设计模式】之迭代器模式

迭代器模式是一种行为设计模式&#xff0c;它允许我们按照特定的方式遍历集合对象&#xff0c;而无需暴露其内部实现。在前端开发中&#xff0c;迭代器模式可以帮助我们更好地管理和操作数据集合。 迭代器模式特性 封装集合对象的内部结构&#xff0c;使其对外部透明。提供一…

云爬虫系统设计-云平台资源管理优化爬虫性能

在构建爬虫系统时&#xff0c;充分利用云平台的资源管理功能可以优化爬虫的性能&#xff0c;提高爬取速度。在本文中&#xff0c;我将与大家分享如何设计一个高效的云爬虫系统&#xff0c;以实现资源管理的优化。通过合理配置云平台&#xff0c;我们可以充分发挥云计算的优势&a…

yolov7模型训练环境安装

ANACONDA Free Download | Anacondahttps://www.anaconda.com/download/进入ANACONDA安装的盘后输入python测试环境是否安装完成 进入 cd Scripts后 在同路径下下载&#xff0c;pip install opencv-python cd.. 退回上层 python 打开’ import cv2 cv2.__version__…

Vue3.0 项目结构及组件

main.js文件 // vue中main.js的作用 // main.js是项目的入口文件&#xff0c;项目中所有的页面都会加载main.js,所以main.js,主要有三个作用&#xff1a; // 1.实例化Vue。 // 2.放置项目中经常会用到的插件和CSS样式。例如&#xff1a; 网络请求插件:axios和vue-resource、图…

css案例:取消组件的阴影

点击的时候会出现阴影&#xff0c;取消阴影操作&#xff1a; .el-radio__input.is-checked{.el-radio__inner{box-shadow:0 0 0 0!important;}}有的时候取消阴影的css不起作用是权限问题&#xff0c;加上!important 就好了。

使用OpenSSL生成自签证书

什么是OpenSSL OpenSSL是一个开源的软件库和工具套件&#xff0c;用于安全地处理网络数据传输中的加密、解密、安全套接层&#xff08;SSL&#xff09;以及传输层安全&#xff08;TLS&#xff09;协议等功能。它广泛应用于网站和互联网服务中&#xff0c;以确保数据传输的安全…

PMP可以评职称了?持证人可享多项福利政策

PMP英文全称&#xff1a;“Project Management Professional” 中文翻译为“项目管理专业人士资格认证”&#xff0c;目标人群就是项目管理人士&#xff0c;旨在提供系统的项目管理专业且基础的理论知识&#xff0c;并且考察项目管理人士的职业能力。PMP集合全球项目专家成功做…

QT 数据库表格----QSqlTableModel

将数据库数据以表格的形式转化处理的方法很多&#xff0c;但我觉得QSqlTableModel这个model应算是非常好用的&#xff1b; msql.exec("create table alldata(照片,车牌号 "",入车时间,出车时间,金额,状态,看守人员);"); //创建表格 //msql 打开的数据库即Q…

8中间件-Redis、MQ---基本

中间件&#xff08;Middleware&#xff09;是指位于客户端和服务器端之间的软件&#xff0c;用于处理请求和响应&#xff0c;以及提供额外的功能和服务。中间件可以用于各种不同的应用程序&#xff0c;例如Web应用程序、消息传递系统、数据库管理系统等。 在Web应用程序中&…

Unity 3D基础——通过四元数控制对象旋转

在这个例子中&#xff0c;通过键盘的左右方向来控制场景中的球体 Sphere 的横向运动&#xff0c;而 Cube 立方体则会一直朝着球体旋转。 1.在场景中新建一个 Cube 立方体和一个 Sphere 球体&#xff0c;在 Inspector 视图中设置 Cube 立方体的坐标为&#xff08;3&#xff0c;0…

Mac电脑空间不足怎么办?如何优化系统

随着使用时间的增长&#xff0c;我们会发现Mac电脑的存储空间越来越少&#xff0c;这时候我们就需要对Mac电脑进行清理&#xff0c;以释放更多的存储空间。那么&#xff0c;Mac空间不足怎么解决呢&#xff1f; 1.清理垃圾文件 Mac空间不足怎么解决&#xff1f;首先要做的就是…

Ubuntu查看自身版本,系统架构

打开终端。 在终端中输入以下命令并按Enter键&#xff1a; lsb_release -awubwub:/$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy确定linux版本 cat /etc/lsb-release DISTRIB_IDU…