dius 0.1.0
Loading...
Searching...
No Matches
platform_thread.h
Go to the documentation of this file.
1#pragma once
2
3#include <pthread.h>
4
5#include "di/function/container/prelude.h"
6#include "di/util/prelude.h"
7#include "di/vocab/error/prelude.h"
8
9namespace dius {
10struct PlatformThread : public di::Immovable {
11 auto id() const -> pthread_t { return native_handle; }
12 auto join() -> di::Result<void>;
13
14 pthread_t native_handle {};
15 di::Function<void()> entry;
16};
17
18using PlatformThreadDeleter = di::DefaultDelete<PlatformThread>;
19}
Definition directory_entry.h:11
Definition platform_thread.h:30
PlatformThread()=default
pthread_t native_handle
Definition platform_thread.h:14
di::Function< void()> entry
Definition platform_thread.h:15
auto join() -> di::Result< void >
auto id() const -> pthread_t
Definition platform_thread.h:11