#ifndef _PT_SEM_H_ #define _PT_SEM_H_ #include "PT.H" //////////////////////////////////////////////////////////////// //信号量 struct pt_sem { unsigned int count; }; //初始化信号量 #define PT_SEM_INIT(s, c) (s)->count = c //等待信号量 #define PT_SEM_WAIT(pt, s) \ do { \ PT_WAIT_UNTIL(pt, (s)->count > 0); \ --(s)->count; \ } while(0) //设置信号量 #define PT_SEM_SIGNAL(pt, s) ++(s)->count #endif