| 430 | ~MemoryMap() { ARROW_CHECK_OK(Close()); } |
| 431 | |
| 432 | Status Close() { |
| 433 | if (file_->is_open()) { |
| 434 | // Lose our reference to the MemoryMappedRegion, so that munmap() |
| 435 | // is called as soon as all buffer exports are released. |
| 436 | region_.reset(); |
| 437 | return file_->Close(); |
| 438 | } else { |
| 439 | return Status::OK(); |
| 440 | } |
| 441 | } |
| 442 | |
| 443 | bool closed() const { return !file_->is_open(); } |
| 444 |