memory.h 522 B

12345678910111213141516171819202122232425262728
  1. #pragma once
  2. #include "common.h"
  3. namespace pkpy{
  4. void* pool64_alloc(size_t) noexcept;
  5. void pool64_dealloc(void*) noexcept;
  6. void* pool128_alloc(size_t) noexcept;
  7. void pool128_dealloc(void*) noexcept;
  8. template<typename T>
  9. void* pool64_alloc() noexcept{
  10. return pool64_alloc(sizeof(T));
  11. }
  12. template<typename T>
  13. void* pool128_alloc() noexcept{
  14. return pool128_alloc(sizeof(T));
  15. }
  16. void pools_shrink_to_fit() noexcept;
  17. std::string pool64_info() noexcept;
  18. std::string pool128_info() noexcept;
  19. }; // namespace pkpy