xref: /freebsd/contrib/llvm-project/lldb/include/lldb/Host/posix/HostThreadPosix.h (revision e25152834cdf3b353892835a4f3b157e066a8ed4)
1 //===-- HostThreadPosix.h -------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLDB_HOST_POSIX_HOSTTHREADPOSIX_H
10 #define LLDB_HOST_POSIX_HOSTTHREADPOSIX_H
11 
12 #include "lldb/Host/HostNativeThreadBase.h"
13 
14 namespace lldb_private {
15 
16 class HostThreadPosix : public HostNativeThreadBase {
17   HostThreadPosix(const HostThreadPosix &) = delete;
18   const HostThreadPosix &operator=(const HostThreadPosix &) = delete;
19 
20 public:
21   HostThreadPosix();
22   HostThreadPosix(lldb::thread_t thread);
23   ~HostThreadPosix() override;
24 
25   Status Join(lldb::thread_result_t *result) override;
26   Status Cancel() override;
27 
28   Status Detach();
29 };
30 
31 } // namespace lldb_private
32 
33 #endif // LLDB_HOST_POSIX_HOSTTHREADPOSIX_H
34