摘要:
第一个参数:指向需要执行的函数 arg为该函数的参数 int整形数字,非零为执行清理函数 两个函数成对使用 先把函数写进routine里,调用push函数去装routine,然后在用pop让push发挥作用 什么时候会触发push函数? 1、线程结束时,调用pthread_exit() 2、取消线程 阅读全文
摘要:
创建信号量,并赋予初值 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 阅读全文
摘要:
动态创建条件变量 int pthread_cond_init(pthread_cond_t *cond, pthread_condattr_t *cond_attr); 注销一个条件变量 int pthread_cond_destroy(pthread_cond_t *cond); 无条件等待 in 阅读全文
摘要:
头文件: #include <pthread.h> 创建新线程函数: int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine) (void *), void *arg); 结束线程函 阅读全文
摘要:
使用直流减速电机 L298N驱动模块 驱动方式: A为向前转,V为向后转。本案例中使用引脚如下: 左前 PC8 PC9 左后 PC6 PC7 右前 PD8 PD9 右后 PC4 PC5 头文件中define几个轮子不同的转动方向 c文件中定义几种不同的转动方式: 阅读全文