NULL, func1, NULL); //信号量+1,进而触发fun1的任务 sem_post(&semDownload); //总线程数+1 g_phreadNum++; break; case 2: pthread_create(&b_thread, NULL, func2, NULL); sem_post(&semDownload); g_phreadNum++; break; case 3: pthread_create(&c_thread, NULL,...
在C语言中,信号量的使用涉及以下四个关键函数:sem_init此函数用于初始化信号量,其参数包括信号量对象、类型(本地或全局)以及初始值。sem_post当线程完成任务时,调用此函数以增加信号量的值,允许其他线程继续执行。sem_wait当线程需要等待其他线程释放资源时,调用此函数以减小信号量的值。sem_destro...