LLDB mainline
|
#include <MainLoopWindows.h>
Classes | |
struct | FdInfo |
Public Member Functions | |
MainLoopWindows () | |
~MainLoopWindows () override | |
ReadHandleUP | RegisterReadObject (const lldb::IOObjectSP &object_sp, const Callback &callback, Status &error) override |
Status | Run () override |
Public Member Functions inherited from lldb_private::MainLoopBase | |
MainLoopBase () | |
virtual | ~MainLoopBase ()=default |
virtual ReadHandleUP | RegisterReadObject (const lldb::IOObjectSP &object_sp, const Callback &callback, Status &error)=0 |
void | AddPendingCallback (const Callback &callback) |
void | AddCallback (const Callback &callback, std::chrono::nanoseconds delay) |
void | AddCallback (const Callback &callback, TimePoint point) |
virtual Status | Run () |
virtual void | RequestTermination () |
Protected Member Functions | |
void | UnregisterReadObject (IOObject::WaitableHandle handle) override |
void | Interrupt () override |
Protected Member Functions inherited from lldb_private::MainLoopBase | |
ReadHandleUP | CreateReadHandle (const lldb::IOObjectSP &object_sp) |
virtual void | UnregisterReadObject (IOObject::WaitableHandle handle)=0 |
virtual void | Interrupt ()=0 |
void | ProcessCallbacks () |
std::optional< TimePoint > | GetNextWakeupTime () |
Private Member Functions | |
void | ProcessReadObject (IOObject::WaitableHandle handle) |
llvm::Expected< size_t > | Poll () |
Private Attributes | |
llvm::DenseMap< IOObject::WaitableHandle, FdInfo > | m_read_fds |
void * | m_interrupt_event |
Additional Inherited Members | |
Public Types inherited from lldb_private::MainLoopBase | |
using | TimePoint = std::chrono::time_point< std::chrono::steady_clock, std::chrono::nanoseconds > |
typedef std::unique_ptr< ReadHandle > | ReadHandleUP |
typedef std::function< void(MainLoopBase &)> | Callback |
Protected Attributes inherited from lldb_private::MainLoopBase | |
std::mutex | m_callback_mutex |
std::priority_queue< std::pair< TimePoint, Callback >, std::vector< std::pair< TimePoint, Callback > >, llvm::on_first< std::greater< TimePoint > > > | m_callbacks |
bool | m_terminate_request: 1 |
Definition at line 23 of file MainLoopWindows.h.
MainLoopWindows::MainLoopWindows | ( | ) |
Definition at line 34 of file MainLoopWindows.cpp.
References m_interrupt_event.
|
override |
Definition at line 39 of file MainLoopWindows.cpp.
References m_interrupt_event, m_read_fds, and UNUSED_IF_ASSERT_DISABLED.
|
overrideprotectedvirtual |
Implements lldb_private::MainLoopBase.
Definition at line 152 of file MainLoopWindows.cpp.
References m_interrupt_event.
|
private |
Definition at line 46 of file MainLoopWindows.cpp.
References lldb_private::MainLoopBase::GetNextWakeupTime(), m_interrupt_event, m_read_fds, ToTimeout(), and UNUSED_IF_ASSERT_DISABLED.
Referenced by Run().
|
private |
|
overridevirtual |
Implements lldb_private::MainLoopBase.
Definition at line 80 of file MainLoopWindows.cpp.
References lldb_private::MainLoopBase::CreateReadHandle(), lldb_private::IOObject::eFDTypeSocket, error(), lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), and m_read_fds.
|
overridevirtual |
Reimplemented from lldb_private::MainLoopBase.
Definition at line 129 of file MainLoopWindows.cpp.
References error(), lldb_private::Status::FromError(), m_interrupt_event, m_read_fds, lldb_private::MainLoopBase::m_terminate_request, Poll(), lldb_private::MainLoopBase::ProcessCallbacks(), and ProcessReadObject().
|
overrideprotectedvirtual |
Implements lldb_private::MainLoopBase.
Definition at line 114 of file MainLoopWindows.cpp.
References m_read_fds, and UNUSED_IF_ASSERT_DISABLED.
|
private |
Definition at line 48 of file MainLoopWindows.h.
Referenced by Interrupt(), MainLoopWindows(), Poll(), Run(), and ~MainLoopWindows().
|
private |
Definition at line 47 of file MainLoopWindows.h.
Referenced by Poll(), ProcessReadObject(), RegisterReadObject(), Run(), UnregisterReadObject(), and ~MainLoopWindows().