| MiniOB 1
    MiniOB is one mini database, helping developers to learn how database works. | 
| Public 成员函数 | |
| LatchMemo (DiskBufferPool *buffer_pool) | |
| 当前遇到的场景都是针对单个BufferPool的,不过从概念上讲,不一定做这个限制 | |
| RC | get_page (PageNum page_num, Frame *&frame) | 
| RC | allocate_page (Frame *&frame) | 
| void | dispose_page (PageNum page_num) | 
| void | latch (Frame *frame, LatchMemoType type) | 
| void | xlatch (Frame *frame) | 
| void | slatch (Frame *frame) | 
| bool | try_slatch (Frame *frame) | 
| void | xlatch (common::SharedMutex *lock) | 
| void | slatch (common::SharedMutex *lock) | 
| void | release () | 
| void | release_to (int point) | 
| int | memo_point () const | 
| Private 成员函数 | |
| void | release_item (LatchMemoItem &item) | 
| Private 属性 | |
| DiskBufferPool * | buffer_pool_ = nullptr | 
| std::deque< LatchMemoItem > | items_ | 
| std::vector< PageNum > | disposed_pages_ |