pthread API 相当于 semaphore.h 中的信号量
pthread API equivalents of semaphores in semaphore.h
这个问题与我正在处理的 producer/consumer 问题的解决方案有关。我们被要求使用 pthreads 来解决问题。为了为有界缓冲区创建空信号量和满信号量,我使用了 semaphore.h,但有人告诉我有一种方法可以在不使用 semaphore.h 的情况下完成此操作。
是否有使用 pthread 创建信号量的标准方法 API?也就是说,是否有一个仅使用 pthreads 的简单等效项:
sem_init(&full, 0, 0);
sem_init(&empty, 0, BUFFER_SIZE);
sem_wait(&empty);
sem_post(&full);
etc.
感谢您提供有关此主题的任何信息。
<semaphore.h>
函数(sem_init()
/sem_open()
等)是pthreads信号量API.
也许您被引导使用条件变量而不是信号量来解决这个问题?
这个问题与我正在处理的 producer/consumer 问题的解决方案有关。我们被要求使用 pthreads 来解决问题。为了为有界缓冲区创建空信号量和满信号量,我使用了 semaphore.h,但有人告诉我有一种方法可以在不使用 semaphore.h 的情况下完成此操作。
是否有使用 pthread 创建信号量的标准方法 API?也就是说,是否有一个仅使用 pthreads 的简单等效项:
sem_init(&full, 0, 0);
sem_init(&empty, 0, BUFFER_SIZE);
sem_wait(&empty);
sem_post(&full);
etc.
感谢您提供有关此主题的任何信息。
<semaphore.h>
函数(sem_init()
/sem_open()
等)是pthreads信号量API.
也许您被引导使用条件变量而不是信号量来解决这个问题?