# Juliet\include\Core\Thread\Thread

## Source Files
- Header: `Juliet\include\Core\Thread\Thread.h`

## AI Description
The `Thread.h` header file defines a C++ class named `Thread` that encapsulates the functionality of creating and managing threads. The main purpose of this component is to provide a simple interface for creating, starting, and stopping threads in a multi-threaded environment.

The design of the `Thread` class includes the following key features:

1. **Thread Creation**: The `Thread` class provides a constructor that takes a function pointer as an argument and creates a new thread by calling the provided function.

2. **Thread Execution**: Once a thread is created, it can be started using the `start()` method of the `std::thread` class. This method begins executing the function passed to the constructor in a separate thread.

3. **Thread Management**: The `Thread` class also includes methods for stopping threads. The `stop()` method allows you to request that a thread stop its execution, and the `join()` method waits for a thread to complete its execution before proceeding.

4. **Wait Function**: The `wait_ms` function is provided as an inline function within the `Thread.h` header file. It takes an integer parameter representing the number of milliseconds to wait before continuing execution. This function uses the `?chrono?` library to sleep for the specified duration.

5. **Namespace and Naming Convention**: The `Thread` class is defined in a namespace named `Juliet`, which follows the standard C++ naming convention for namespaces.

## Symbols

*No symbols detected.*
