与C编程有关。
假设我这样做:
struct myStruct
{
pthread_mutex_t myMutex;
sem_t mySemaphore;
};
`
我 malloc 适当的大小并初始化信号量:
myStruct *create_myStruct()
{
myStruct *temp;
temp = (myStruct *) malloc(sizeof(myStruct));
sema_init(&sema, 0, 0);
pthread_mutex_init(&(temp->myMutex), NULL);
return temp;
}
我还需要手动销毁信号量还是只调用 free 就可以了?