linux下的线程

ops/2025/1/19 4:35:38/

一、pthread 线程

  线程可以说是轻量级的进程,一般是一个进程中的多个任务。

  进程:系统中的最小资源分配单元

  线程:系统中最小执行单元

二、线程的特征

1、共享资源

2、效率高30%

3.使用第三方库(头文件加pthread.h    编译时添加 -lpthread)

三、线程的缺点

1、稳定性差

2、gdb调试比较麻烦

四、进程和线程的区别

1、线程比进程多了共享资源

2、线程只具有一部分的私有资源,进程间只有私有资源

3、进程空间独立,不能直接通信

    线程可以共享空间,可以直接通信。

五、线程的设计框架

 创建 ---->   空间操作 ------>   资源回收

六、相关函数

pthread_create(&tid,NULL,th,NULL)

   创建线程:第一个参数是线程id

                第二个参数是线程属性,默认是NULL属性

               第三个参数是指向指针函数的函数指针,本质上就是函数的名字(回调函数)(执行空间)

              第四个参数是函调函数的参数

pthread_self()

     获取当前线程的线程id

pthread_exit(void *retval)

     子线程自行退出,退出时返回参数中的状态

pthread_cancle(id)

    结束一个进程,参数是要结束的线程的id号

pthread_join(id,void **retval)

     将指定线程回收,具有阻塞功能。

     第二个参数,就是线程结束时返回的状态,可以说就是pthread_exit()中参数的值

pthread_detach(id)

    设置分离属性


http://www.ppmy.cn/ops/151276.html

相关文章

视频本地化的特点

视频本地化是一个多方面的过程,涉及为特定的语言和文化市场调整视听内容。当由本地专业人员处理时,这个过程达到了自动化工具或非本地专家难以达到的深度和真实性水平。母语人士对语言、文化背景和观众期望有着细致入微的理解,这对于创建与不…

开始使用Panuon开源界面库环境配置并手写VS2019高仿界面

1. Panuon环境配置 1.1. 通过Nuget 安装 Panuon.WPF.UI1.2. xaml引用命名空间1.3. using Panuon.WPF.UI; 2. VS2019 view 2.1. 设置窗体尺寸和title2.2. 添加静态资源 2.2.1. 什么是静态资源 2.3. 主Grid 2.3.1. 盒子模型2.3.2. 嵌套布局 3. 总结 1. Panuon环境配置 1.1. 通…

Web前端------HTML多媒体标签之音频和视频标签

一.音频和视频标签介绍 <audio></audio> 网页中支持播放音频的标签&#xff0c;经常用于给网页添加背景音乐&#xff1b;音频播放网站常用 audio标签&#xff0c;支持网页中播放音频数据注意&#xff1a;需要将支持的mp3文件&#xff0c;保存在指定文件夹中 audi…

idea本地jar包添加到项目的maven库 mvn install:install-file

背景 最近在开发项目中需要对接海康威视摄像头&#xff0c;进行视频、照片等数据的获取保存&#xff1b;海康提供的sdk的jar包是自己开发的&#xff0c;在maven库中是找不到的&#xff0c;在项目中需要手动指定jar包路径 <dependency><groupId>com.haikang</g…

【SpringBoot】深度解析 Spring Boot 拦截器:实现统一功能处理的关键路径

前言 ???本期讲解关于拦截器的详细介绍~~~ ??感兴趣的小伙伴看一看小编主页&#xff1a;-CSDN博客 ?? 你的点赞就是小编不断更新的最大动力 ??那么废话不多说直接开整吧~~ 目录 ???1.拦截器 ??1.1拦截器快速入门 1.?定义拦截器 2.配置拦截器 ??1.2拦…

sql server 常用运维SQL

12.定位SQL查询SQL语句执行时间和IO消耗 SELECT s2.dbid, (SELECT TOP 1 SUBSTRING(s2.text,statement_start_offset / 2+1 , ( (CASE WHEN statement_end_offset = -1 THEN (LEN(CONVERT(nvarchar(max),s2.text)) * 2) ELSE statement_end_offset END) - statement_start_offs…

初识JVM HotSopt 的发展历程

目录 导学 目前企业对程序员的基本要求 面向的对象 实战 学习目标 JVM 是什么 JVM 的三大核心功能 各大 JVM look 看一下虚拟机 HotSopt 的发展历程 总结 导学 目前企业对程序员的基本要求 面向的对象 实战 学习目标 JVM 是什么 JVM 的三大核心功能 即时编译 主要是…

什么情况下适合使用静态路由?什么情况下适合使用动态路由?_什么时候用静态路由什么时候用动态

2 静态路由 静态路由是由网络管理员根据网络拓扑&#xff0c;使用命令在路由器上配置的路由&#xff0c;这些静态路由信息指导报文发送&#xff0c;静态路由方式也无需路由器进行计算&#xff0c;但它完全依赖于网络管理员的手动配置。 补充一下&#xff0c;默认路由是一种特…