latch介绍

发布时间:2016-12-8 8:25:04 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"latch介绍",主要涉及到latch介绍方面的内容,对于latch介绍感兴趣的同学可以参考一下。

latch是一种锁,用来实现对Oracle所有共享数据结构的串行化访问。共享池就是这样一个例子, 这是系统全局区中一个庞大的共享数据结构,Oracle正是在这里存储已解析,已编译的SQL。 修改这个共享内存结构时,必须注意一次只允许一个进程访问。 (如果两个进程或线程试图同时更新内存中的相同的数据结构,这会很槽糕,会导致大量数据被破坏.) 所以,Oracle采用了一种lacth机制,这是一种完成串行化访问的轻量级锁定方法。 不要被"轻量级"这个词蒙住了,作为串行化设备,latch一次只允许访问一个进程。latch在硬解析实现中大量使用, 实际上,这也是latch最常见的方法。共享池的latch和库缓存的latch都是不折不扣的latch,它们成为 人们频繁争抢的目标。这说明,试图同时硬解析语句的用户越多,性能就会随时间变得越差。 人们执行的硬解析越多,对共享池的latch争用就越厉害,等待的队列越长,等待的时间也就越久。   硬解析更重要的因素是库缓存所用的latch机制,硬解析一个查询时,数据库会更长时间地 占用一种低级的串行化设备,称为latch. 这种latch用来保护Oracle共享内存中的数据结构不会同时被两个进程修改,而且如果有人正在修改数据结构, 则不允许另外的人再来读取。对这些数据结构加latch的时间越长,越频繁,排队等待latch的进程就越多, 等待队列也越长。

上一篇:Drawable资源---ClipDrawable资源
下一篇:设置IE浏览器模式

相关文章

关键词: latch介绍

相关评论