File indexing completed on 2026-05-10 08:42:49
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LLDB_HOST_HOSTTHREAD_H
0010 #define LLDB_HOST_HOSTTHREAD_H
0011
0012 #include "lldb/Host/HostNativeThreadForward.h"
0013 #include "lldb/Utility/Status.h"
0014 #include "lldb/lldb-types.h"
0015
0016 #include <memory>
0017
0018 namespace lldb_private {
0019
0020 class HostNativeThreadBase;
0021
0022
0023
0024
0025
0026
0027
0028
0029 class HostThread {
0030 public:
0031 HostThread();
0032 HostThread(lldb::thread_t thread);
0033
0034 Status Join(lldb::thread_result_t *result);
0035 Status Cancel();
0036 void Reset();
0037 lldb::thread_t Release();
0038
0039 bool IsJoinable() const;
0040 HostNativeThread &GetNativeThread();
0041 const HostNativeThread &GetNativeThread() const;
0042 lldb::thread_result_t GetResult() const;
0043
0044 bool EqualsThread(lldb::thread_t thread) const;
0045
0046 private:
0047 std::shared_ptr<HostNativeThreadBase> m_native_thread;
0048 };
0049 }
0050
0051 #endif