From d6ff0275937f77ff2c0398127a7d9737cf35e908 Mon Sep 17 00:00:00 2001 From: Zaggy1024 Date: Thu, 26 Feb 2026 23:14:19 -0600 Subject: [PATCH] LibCore: Remove the pending jobs functionality from ThreadEventQueue This is no longer used. --- Libraries/LibCore/EventLoop.cpp | 6 ------ Libraries/LibCore/EventLoop.h | 2 -- Libraries/LibCore/ThreadEventQueue.cpp | 17 ----------------- Libraries/LibCore/ThreadEventQueue.h | 4 ---- 4 files changed, 29 deletions(-) diff --git a/Libraries/LibCore/EventLoop.cpp b/Libraries/LibCore/EventLoop.cpp index 6ff35d7421..9466957889 100644 --- a/Libraries/LibCore/EventLoop.cpp +++ b/Libraries/LibCore/EventLoop.cpp @@ -73,7 +73,6 @@ NonnullRefPtr EventLoop::current_weak() void EventLoop::quit(int code) { - ThreadEventQueue::current().cancel_all_pending_jobs(); m_impl->quit(code); } @@ -112,11 +111,6 @@ size_t EventLoop::pump(WaitMode mode) return m_impl->pump(mode == WaitMode::WaitForEvents ? EventLoopImplementation::PumpMode::WaitForEvents : EventLoopImplementation::PumpMode::DontWaitForEvents); } -void EventLoop::add_job(NonnullRefPtr>> job_promise) -{ - ThreadEventQueue::current().add_job(move(job_promise)); -} - int EventLoop::register_signal(int signal_number, Function handler) { return EventLoopManager::the().register_signal(signal_number, move(handler)); diff --git a/Libraries/LibCore/EventLoop.h b/Libraries/LibCore/EventLoop.h index 95fcca91e3..5e7f71b4c5 100644 --- a/Libraries/LibCore/EventLoop.h +++ b/Libraries/LibCore/EventLoop.h @@ -70,8 +70,6 @@ public: // Pump the event loop until some condition is met. void spin_until(Function); - void add_job(NonnullRefPtr>> job_promise); - void deferred_invoke(ESCAPING Function); void wake(); diff --git a/Libraries/LibCore/ThreadEventQueue.cpp b/Libraries/LibCore/ThreadEventQueue.cpp index 0ad0fdd506..32df5697ef 100644 --- a/Libraries/LibCore/ThreadEventQueue.cpp +++ b/Libraries/LibCore/ThreadEventQueue.cpp @@ -42,7 +42,6 @@ struct ThreadEventQueue::Private { Threading::Mutex mutex; Vector queued_events; - Vector>>, 16> pending_promises; }; static pthread_key_t s_current_thread_event_queue_key; @@ -95,28 +94,12 @@ void ThreadEventQueue::deferred_invoke(Function&& invokee) Core::EventLoopManager::the().did_post_event(); } -void ThreadEventQueue::add_job(NonnullRefPtr>> promise) -{ - Threading::MutexLocker lock(m_private->mutex); - m_private->pending_promises.append(move(promise)); -} - -void ThreadEventQueue::cancel_all_pending_jobs() -{ - Threading::MutexLocker lock(m_private->mutex); - for (auto const& promise : m_private->pending_promises) - promise->reject(Error::from_errno(ECANCELED)); - - m_private->pending_promises.clear(); -} - size_t ThreadEventQueue::process() { decltype(m_private->queued_events) events; { Threading::MutexLocker locker(m_private->mutex); events = move(m_private->queued_events); - m_private->pending_promises.remove_all_matching([](auto& job) { return job->is_resolved() || job->is_rejected(); }); } for (auto& queued_event : events) { diff --git a/Libraries/LibCore/ThreadEventQueue.h b/Libraries/LibCore/ThreadEventQueue.h index db67c4eb8f..4a79452bfa 100644 --- a/Libraries/LibCore/ThreadEventQueue.h +++ b/Libraries/LibCore/ThreadEventQueue.h @@ -34,10 +34,6 @@ public: // Post a deferred invocation to the event queue. void deferred_invoke(Function&&); - // Used by Threading::BackgroundAction. - void add_job(NonnullRefPtr>>); - void cancel_all_pending_jobs(); - // Returns true if there are events waiting to be flushed. bool has_pending_events() const;