Expose notify_using_readonly

This exposes a readonly notify using, so that the underlying platform
can map the range of pages readonly into the application.  This improves
performance of external pointer on platforms that support lazy commit
of pages as it can access anything in the range.
This commit is contained in:
Matthew Parkinson
2021-09-23 15:56:59 +01:00
committed by Matthew Parkinson
parent 0af1ee3bef
commit b4efc40aa6
3 changed files with 45 additions and 11 deletions

View File

@@ -33,6 +33,15 @@ function may not be required to do anything.
If the template parameter is set to `YesZero` then this function is also
responsible for ensuring that the newly requested memory is full of zeros.
```c++
static void notify_using_readonly(void* p, size_t size) noexcept;
```
Notify the system that the range of memory from `p` to `p` + `size` is now in use
for read-only access. This is currently only requried on platforms that support
`LazyCommit`.
On systems that lazily provide physical memory to virtual mappings, this
function may not be required to do anything.
```c++
template<bool page_aligned = false>
static void zero(void* p, size_t size) noexcept;