-
从数据库里面读取信息-线性代数及其应用中文版下载
资源介绍
3.3 从数据库里面读取信息
当 共享锁取得之后,我们就可以开始从数据库文件中读取信息了。在当前环节,我们已经假定了系统缓存是空的,
所以信息必须首先从读硬盘读取到系统缓存中去,然 后从系统缓存中传递到用户空间。针对之后的读取,部分或
者全部数据都可能可以从操作系统缓存中取得,所以只需要传递到用户空间即可。
一般的,数据库文件只有部分被读取。这个例子中,8 页中只有 3 页被读取。一个典型应用中,一个数据库文件拥
有成千上万页,一个查询通常读取到的页码数量只占总数一个很小的百分比。
3.4 申请一个 Reserved Lock
在修改一个数据库之前,SQLite 首先得拥有一个针对数据库文件的“Reserved” 锁。Reserved 锁类似于共享锁,它
们都允许其他数据库联接读取信息。单个 Reserved 锁能够与其他进程的多个共享锁一起协作。然后一个数据库文
件同时只能存在一个 Reserved 。因此只能有一个进程在某一时刻尝试去写一个数据库文件。
Reserved 锁的存在是宣告一个进程将打算去更新数据库文件,但还没有开始。因为还没有开始修改,因此其他进程
可以读取数据,其他进程不应该去尝试修改该数据库。
- 上一篇: ATmega16 中文手册.PDF
- 下一篇: 硬件设定-线性代数及其应用中文版