C++信号量使用简介
/*头文件*/
#include <semaphore.h>
/*声明与定义*/
extern sem_t s_update_info_sem;
sem_t s_update_info_sem;
/*创建信号灯*/
int ret = sem_init(&s_update_info_sem, 0, 2);
/*点灯*/
sem_post(&s_update_info_sem); //信号灯值加1,表示增加一个可访问的资源。
/*等待灯亮*/
sem_wait(&s_update_info_sem); //等待信号灯值大于0,然后将信号灯值减1,并返回。
sem_trywait(&s_update_info_sem); //如果信号灯计数大于0,则将值减1并返回0,否则立即返回-1。
/*销毁信号灯*/
sem_destroy(&s_update_info_sem)