共享内存互斥

数据库服务器在尝试修改共享内存中的数据时使用互斥来协调线程。 每个可修改的共享内存资源都与互斥相关联。 在线程可以修改共享内存资源之前,它必须先获取与该资源关联的互斥。在线程获取该互斥后,它便可以修改该资源。当修改完成时,线程将释放互斥。

如果线程试图获取互斥并发现该互斥正由另一个线程所持有,那么进入的线程必须等待互斥被释放。

例如,两个线程可以尝试访问块表中的同一个插槽,但只有一个线程可以获取与块表关联的互斥。只有持互斥的线程才可以将其条目写入块表。第二个线程必须等待该互斥被释放,然后才能获取该互斥。

有关监视互斥(也称为锁存器)的信息,请参阅监视共享内存概要文件和锁存器