2023-06-06 16:56:19 -07:00
|
|
|
#pragma once
|
|
|
|
|
2023-06-22 02:17:50 -07:00
|
|
|
#include <glacier/status/error.h>
|
2023-06-06 16:56:19 -07:00
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
class Thread {
|
|
|
|
public:
|
|
|
|
typedef void (*Entry)(void*);
|
|
|
|
|
2023-06-12 19:13:55 -07:00
|
|
|
Thread() : thread_cap_(0) {}
|
2023-06-06 16:56:19 -07:00
|
|
|
Thread(Entry e, const void* arg1);
|
|
|
|
|
2023-06-22 02:17:50 -07:00
|
|
|
[[nodiscard]] glcr::ErrorCode Join();
|
|
|
|
|
2023-06-06 16:56:19 -07:00
|
|
|
private:
|
|
|
|
uint64_t thread_cap_;
|
|
|
|
};
|