From 9b9b644143e9a87820170fe037d3af7bdf3a19b3 Mon Sep 17 00:00:00 2001 From: Deukhoofd Date: Tue, 4 Aug 2020 13:43:51 +0200 Subject: [PATCH] Tweak EventHook data allocation based on testing. --- src/Battling/EventHooks/EventHook.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Battling/EventHooks/EventHook.hpp b/src/Battling/EventHooks/EventHook.hpp index 1c644ed..10be88b 100644 --- a/src/Battling/EventHooks/EventHook.hpp +++ b/src/Battling/EventHooks/EventHook.hpp @@ -19,11 +19,11 @@ namespace CreatureLib::Battling { size_t _capacity; uint8_t* _memory = nullptr; - // Consider tweaking this size to be in line with the normal amount of events we use. - static const size_t defaultSize = 1024; + static constexpr size_t initialSize = 2048; + static constexpr size_t stepSize = 1024; public: - EventHook() : _offset(0), _capacity(defaultSize) { + EventHook() : _offset(0), _capacity(2048) { auto ptr = malloc(_capacity); if (ptr == nullptr) { THROW_CREATURE("Out of memory."); @@ -42,7 +42,7 @@ namespace CreatureLib::Battling { if (_listeners.size() == 0) return; if (_offset + sizeof(T) >= _capacity) { - _capacity += defaultSize; + _capacity += stepSize; auto newPtr = realloc(_memory, _capacity); if (newPtr == nullptr) { THROW_CREATURE("Out of memory.");