在 UNIX 操作系统中使用 SysV 信号量可以实现一种算法,在该算法中,进程一直等待,直到信号量的值达到值 0(有关详细信息,请参见 man semop)。现在,似乎每个人都说使用其他同步 API 更好,所以我的问题是:如何使用 pthread、POSIX 信号量或其他类似 API 获得相同的行为?如果不可能,我应该担心使用 SysV 信号量吗?
编辑:我指的是多线程场景,线程是使用 pthreads 创建的。
在 UNIX 操作系统中使用 SysV 信号量可以实现一种算法,在该算法中,进程一直等待,直到信号量的值达到值 0(有关详细信息,请参见 man semop)。现在,似乎每个人都说使用其他同步 API 更好,所以我的问题是:如何使用 pthread、POSIX 信号量或其他类似 API 获得相同的行为?如果不可能,我应该担心使用 SysV 信号量吗?
编辑:我指的是多线程场景,线程是使用 pthreads 创建的。