memorypool.hpp 513 B

1234567891011121314151617181920212223
  1. #pragma once
  2. #include "pocketpy/common/gil.hpp"
  3. #include <cstddef>
  4. #include <cassert>
  5. #include <string>
  6. namespace pkpy {
  7. const inline int kPoolExprBlockSize = 128;
  8. const inline int kPoolFrameBlockSize = 80;
  9. void* PoolExpr_alloc() noexcept;
  10. void PoolExpr_dealloc(void*) noexcept;
  11. void* PoolFrame_alloc() noexcept;
  12. void PoolFrame_dealloc(void*) noexcept;
  13. void* PoolObject_alloc(size_t size) noexcept;
  14. void PoolObject_dealloc(void* p) noexcept;
  15. void PoolObject_shrink_to_fit() noexcept;
  16. }; // namespace pkpy