# Thread::Join ```cpp void Join() ``` 等待线程结束并回收其资源。调用线程将被阻塞,直到目标线程完成执行。 **参数:** 无 **返回:** 无 **复杂度:** O(n),n 为目标线程的执行时间 **注意:** - 如果线程已经被分离(Detach)或已经 Join 过,调用此方法将导致未定义行为。 - 建议在使用完 Thread 对象后始终调用 Join 或 Detach。 **示例:** ```cpp Thread worker; worker.Start([]() { for (int i = 0; i < 5; ++i) { printf("Working...\n"); Thread::Sleep(100); } }, "WorkerThread"); printf("Main thread waiting...\n"); worker.Join(); printf("Worker thread finished\n"); ``` ## 相关文档 - [Thread 总览](thread.md) - 返回类总览