Latch是Oracle数据库中用于保护内存结构的并发访问机制。作为一种低级别锁,latch确保对共享资源的访问是串行的,从而防止数据损坏。

不同于锁定的长时间持有,latch获取时间通常非常短暂。 这种轻量级的机制通过简单的内存结构实现,其大小通常不超过200字节。

自Oracle 8.0版本开始,latch被封装在latch状态对象中,并可以驻留在固定的系统全局区(SGA)或共享池中。 此外,latch支持共享机制,例如获取缓存缓冲区链latch用于检查缓冲区链。