编译环境:Ubuntu16.04 64位
交叉编译工具:arm-hisiv500-linux-gcc
1. 背景
最近项目中需要用到多线程通信,取走旧数据,取数据不及时写入覆盖旧数据,队列长度可配置,自己造个轮子吧,对照上一篇linux c共享内存和信号量。
2. 涉及的函数
详细描述可以百度或ubuntu下查询man手册。
互斥锁相关:
int pthread_mutex_init(pthread_mutex_t * mutex, const pthread_mutexattr_t * attr);
int pthread_mutex_destroy(pthread_mutex_t *mutex);
int pthread_mutex_lock(pthread_mutex_t *mutex);
int pthread_mutex_unlock(pthread_mutex_t *mutex);
3. 头文件JList.h
#ifndef __J_LIST__
#define __J_LIST__
#include <pthread.h>
#ifdef __cplusplus
exte