# Thread **命名空间**: `XCEngine::Threading` **类型**: `class` **头文件**: `XCEngine/Threading/Thread.h` **描述**: 线程类,封装 std::thread 提供命名的线程管理功能。 ## 概述 `Thread` 类封装了 `std::thread`,提供统一的线程管理接口。设计用于跨平台线程创建和管理,支持为线程指定名称便于调试和日志记录。 类提供实例方法用于启动、等待(Join)和分离(Detach)线程,以及静态工具方法用于获取当前线程 ID、线程睡眠和让出 CPU 时间片。 ## 类型别名 | 类型 | 定义 | 描述 | |------|------|------| | `Id` | `uint64_t` | 线程唯一标识符类型 | ## 公共方法 | 方法 | 描述 | |------|------| | [`Thread()`](thread.md) | 默认构造函数 | | [`~Thread()`](thread.md) | 析构函数 | | [`Start`](start.md) | 启动线程,执行传入的函数 | | [`Join`](join.md) | 等待线程结束 | | [`Detach`](detach.md) | 分离线程,使其独立运行 | | [`GetId`](get-id.md) | 获取线程 ID | | [`GetName`](get-name.md) | 获取线程名称 | | [`GetCurrentId`](get-current-id.md) | 获取当前线程 ID | | [`Sleep`](sleep.md) | 线程休眠指定毫秒数 | | [`Yield`](yield.md) | 让出当前线程的时间片 | ## 使用示例 ```cpp #include "XCEngine/Threading/Thread.h" using namespace XCEngine::Threading; void WorkerFunction() { printf("Worker thread running\n"); } int main() { Thread thread; thread.Start(WorkerFunction, "WorkerThread"); thread.Join(); Thread::Sleep(1000); Thread::Yield(); auto currentId = Thread::GetCurrentId(); return 0; } ``` ## 相关文档 - [Mutex](../mutex/mutex.md) - 互斥锁 - [TaskSystem](../task-system/task-system.md) - 任务调度系统 - [../threading.md](../threading.md) - 模块总览