|
|
@ -43,9 +43,14 @@ public: |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void resize(std::size_t count) { |
|
|
void resize(std::size_t count) { |
|
|
|
|
|
const auto new_size = count * sizeof(T); |
|
|
|
|
|
if (new_size == alloc_size) { |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
FreeMemoryPages(base_ptr, alloc_size); |
|
|
FreeMemoryPages(base_ptr, alloc_size); |
|
|
|
|
|
|
|
|
alloc_size = count * sizeof(T); |
|
|
|
|
|
|
|
|
alloc_size = new_size; |
|
|
base_ptr = reinterpret_cast<T*>(AllocateMemoryPages(alloc_size)); |
|
|
base_ptr = reinterpret_cast<T*>(AllocateMemoryPages(alloc_size)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|