摘要: 第一个参数:指向需要执行的函数 arg为该函数的参数 int整形数字,非零为执行清理函数 两个函数成对使用 先把函数写进routine里,调用push函数去装routine,然后在用pop让push发挥作用 什么时候会触发push函数? 1、线程结束时,调用pthread_exit() 2、取消线程 阅读全文
posted @ 2019-10-14 23:35 祁峰_1024 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 创建信号量,并赋予初值 int sem_init(sem_t *sem, int pshared, unsigned int value); 销毁信号量 int sem_destroy(sem_t *sem); 阻塞,信号量数值-1 int sem_wait(sem_t *sem); 非阻塞申请in 阅读全文
posted @ 2019-10-14 21:18 祁峰_1024 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 动态创建条件变量 int pthread_cond_init(pthread_cond_t *cond, pthread_condattr_t *cond_attr); 注销一个条件变量 int pthread_cond_destroy(pthread_cond_t *cond); 无条件等待 in 阅读全文
posted @ 2019-10-14 20:35 祁峰_1024 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 头文件: #include <pthread.h> 创建新线程函数: int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine) (void *), void *arg); 结束线程函 阅读全文
posted @ 2019-10-14 13:22 祁峰_1024 阅读(189) 评论(0) 推荐(1) 编辑
摘要: 使用直流减速电机 L298N驱动模块 驱动方式: A为向前转,V为向后转。本案例中使用引脚如下: 左前 PC8 PC9 左后 PC6 PC7 右前 PD8 PD9 右后 PC4 PC5 头文件中define几个轮子不同的转动方向 c文件中定义几种不同的转动方式: 阅读全文
posted @ 2019-10-14 13:02 祁峰_1024 阅读(693) 评论(0) 推荐(0) 编辑