faster timeout for games

This commit is contained in:
2025-10-25 13:52:50 +02:00
parent 844cf86d8d
commit 278e822600
13 changed files with 197 additions and 196 deletions

View File

@@ -144,11 +144,14 @@ public:
}
~EventBus() override { vQueueDelete(_queueHandle); }
void post(const sdk::AppEvent& event) override { xQueueSendToBack(_queueHandle, &event, portMAX_DELAY); }
sdk::AppEvent pop() override {
void post(const sdk::AppEvent& event) override { xQueueSendToBack(_queueHandle, &event, portMAX_DELAY); }
std::optional<sdk::AppEvent> pop(std::optional<std::uint32_t> timeout_ms = std::nullopt) override {
sdk::AppEvent out;
xQueueReceive(_queueHandle, &out, portMAX_DELAY);
return out;
TickType_t ticks = timeout_ms ? pdMS_TO_TICKS(*timeout_ms) : portMAX_DELAY;
if (xQueueReceive(_queueHandle, &out, ticks) == pdTRUE) {
return out;
}
return std::nullopt;
}
private: