POSIX信号量
1. 基本概念
POSIX 信号量是一种用于进程间通信(IPC)和同步的机制。它是指遵循 POSIX 标准的信号量,允许多个进程或线程同时访问共享资源,并通过控制对该资源的访问来协调它们之间的活动。
POSIX 信号量有两个主要操作: P 操作(也称为 wait 操作)和 V 操作(也称为 signal 操作)。P 操作会在信号量值为正数时将其减 1,否则会阻塞进程。相反,V 操作会将信号量值加 1,并唤醒阻塞在该信号量上的任何进程。
使用 POSIX 信号量时,需要注意避免死锁,这种情况通常是由于多个进程或线程互相等待对方释放某个资源所导致的。此外,也需要设置超时,以防止进程长时间阻塞。
POSIX 信号量分为两种:POSIX 有名信号量和POSIX 无名信号量。