当前位置: 首页 > news >正文

嵌入式第三十天(线程)

一.线程操作相关函数

1.

2.

示例:

#include <stdio.h>
#include <pthread.h>typedef int u32;
//将一个函数指针类型重命名成PFUN_t类型
typedef void *(*PFUN_t)(void *);void *main_ctl(void *arg)
{while (1){printf("主控模块正在工作...\n");sleep(1);}
}void *get_cmd(void *arg)
{while (1){printf("获取指令模块正在工作...\n");sleep(1);}
}void *ctl_cmd(void *arg)
{while (1){printf("执行指令模块正在工作...\n");sleep(1);}
}void *get_pic(void *arg)
{while (1){printf("图像采集模块正在工作...\n");sleep(1);}
}void *send_pic(void *arg)
{while (1){printf("图像发送模块正在工作...\n");sleep(1);}
}
int main(int argc, const char *argv[])
{pthread_t tid[5];//	void *(*pfun)(void *);       //函数指针  //指针名称:pfun
//	void *(*pfuns[5])(void *) = {main_ctl, get_cmd};   //函数指针数组  //数组名:pfunint a[10];PFUN_t tasks[5] = {main_ctl, get_cmd, ctl_cmd, get_pic, send_pic};for (int i = 0; i < 5; i++){pthread_create(&tid[i], NULL, tasks[i],NULL);}while (1){printf("xxxxx\n");sleep(1);}pthread_join();/*pthread_create(&tid[0], NULL, main_ctl, NULL);pthread_create(&tid[1], NULL, get_cmd, NULL);pthread_create(&tid[2], NULL, ctl_cmd, NULL);pthread_create(&tid[3], NULL, get_pic, NULL);pthread_create(&tid[4], NULL, send_pic, NULL);*/for (int i = 0; i < 5; i++){pthread_join(tid[i], NULL);}return 0;
}

3.

简单示例:

4.线程间的通信

方式:全局变量,全局队列,共享内存区域.

1.

2.

简单示例:

http://www.dtcms.com/a/334563.html

相关文章:

  • 围棋对战游戏开发详解 附源码
  • 【C++】标准库中用于组合多个值的数据结构pair、tuple、array...
  • k8s+kubeedge的混合框架下,云端pod与边缘端pod如何进行通信?
  • HTTP协议-1-认识各个HTTP协议版本的主要特点
  • Python进行点云公共区域的提取
  • Docker目录的迁移
  • 银行间交易IMIX协议加密相关
  • 后台管理系统-4-vue3之pinia实现导航栏按钮控制左侧菜单栏的伸缩
  • 机器学习——线性回归
  • 平滑方法(smoothing)
  • Python-深度学习——pytorch的安装
  • 开源 Arkts 鸿蒙应用 开发(十八)通讯--Ble低功耗蓝牙服务器
  • VSCode匹配删除多行注释
  • JavaScript 核心语法与实战笔记:从基础到面试高频题
  • 从“Hello World”到“高并发中间件”:Go 语言 2025 系统学习路线图
  • 深入解析C++ STL链表(List)模拟实现
  • 微服务之注册中心与ShardingSphere关于分库分表的那些事
  • 类与类加载器
  • 基于GIS的无人机模拟飞行控制系统设计与实现
  • 某智慧教育平台登录流程分析
  • 元宇宙娱乐:重构数字时代的沉浸式体验
  • 嵌入式 Linux LED 驱动开发实验
  • RK3568 NPU RKNN(五):RKNN-ToolKit-lite2板端推理
  • 要导入StandardScaler类进行数据标准化,请使用以下语句:
  • JavaScript学习第十章-第三部分(dom)
  • B3865 [GESP202309 二级] 小杨的 X 字矩阵(举一反三)
  • C#计算阶乘程序改进
  • C# 元组的用法
  • Nona生命之树作品TRO突袭,冻结名单曝光
  • Vue2.x核心技术与实战(一)