函数
GLibbit_lock
自:2.24
声明 [src]
void
g_bit_lock (
volatile gint* address,
gint lock_bit
)
说明 [src]
在 address 中设置指示的 lock_bit。如果位已设置,此调用将阻塞,直到 g_bit_unlock() 取消设置对应的位。
不支持在同一整数内的两个不同位上尝试加锁,并且很可能会导致死锁。
设置的位的值是 (1u << bit)。如果 bit 不在 0 到 31 之间,则结果未定义。
此函数以原子方式访问 address。 address 的所有其他访问都必须是原子的,以便此函数可靠地工作。虽然 address 有 volatile 限定符,但这只是历史遗留物,传递给它的参数不应该是 volatile。
自 2.24 起可用