forked from ShuriZma/suyu
1
0
Fork 0

Add missing looping event schedule signal

This commit is contained in:
Kelebek1 2022-08-02 05:28:31 +01:00 committed by Morph
parent 83a24ad638
commit 658e1ee426
1 changed files with 9 additions and 5 deletions

View File

@ -143,6 +143,7 @@ void CoreTiming::ScheduleLoopingEvent(std::chrono::nanoseconds start_time,
std::chrono::nanoseconds resched_time, std::chrono::nanoseconds resched_time,
const std::shared_ptr<EventType>& event_type, const std::shared_ptr<EventType>& event_type,
std::uintptr_t user_data, bool absolute_time) { std::uintptr_t user_data, bool absolute_time) {
{
std::scoped_lock scope{basic_lock}; std::scoped_lock scope{basic_lock};
const auto next_time{absolute_time ? start_time : GetGlobalTimeNs() + start_time}; const auto next_time{absolute_time ? start_time : GetGlobalTimeNs() + start_time};
@ -152,6 +153,9 @@ void CoreTiming::ScheduleLoopingEvent(std::chrono::nanoseconds start_time,
std::push_heap(event_queue.begin(), event_queue.end(), std::greater<>()); std::push_heap(event_queue.begin(), event_queue.end(), std::greater<>());
} }
event.Set();
}
void CoreTiming::UnscheduleEvent(const std::shared_ptr<EventType>& event_type, void CoreTiming::UnscheduleEvent(const std::shared_ptr<EventType>& event_type,
std::uintptr_t user_data) { std::uintptr_t user_data) {
std::scoped_lock scope{basic_lock}; std::scoped_lock scope{basic_lock};