C# Thread 类有哪些常⽤的属性和⽅法?
                                             参考答案:
                                         
                                        在C#中,Thread 类是 System.Threading 命名空间的一部分,它提供了创建和控制线程的功能。以下是一些常用的 Thread 类的属性和方法:
属性
- CurrentThread:获取当前正在运行的线程。
 - IsAlive:获取一个值,指示线程的执行状态。
 - IsBackground:获取或设置一个值,指示线程是否为后台线程。
 - IsThreadPoolThread:获取一个值,该值指示线程是否属于线程池。
 - ManagedThreadId:获取当前托管线程的唯一标识符。
 - Name:获取或设置线程的名称。
 - Priority:获取或设置线程的调度优先级。
 - ThreadState:获取包含线程状态的位字段。
 
方法
- Abort():终止此线程的执行。调用此方法通常不是一个好主意,因为它可能导致资源泄露和其他问题。
 - GetDomain():返回此线程当前正在其中执行的 
AppDomain。 - GetDomainID():获取此线程当前正在其中执行的 
AppDomain的标识符。 - Interrupt():中断处于等待、睡眠或 Join 状态的线程。
 - Join():阻塞调用线程,直到当前实例的线程终止执行或经过指定的时间间隔。
 - Join(int millisecondsTimeout):阻塞调用线程,直到指定的时间间隔已过或当前实例的线程终止执行。
 - Join(TimeSpan timeout):阻塞调用线程,直到指定的 
TimeSpan间隔已过或当前实例的线程终止执行。 - ResetAbort():取消为当前线程发出的 
Abort(Object)请求。 - SetApartmentState(ApartmentState state):设置线程的单元状态。
 - SetPriority(ThreadPriority priority):设置线程的调度优先级。
 - Sleep(int millisecondsTimeout):使当前线程暂停执行指定的毫秒数。
 - Sleep(TimeSpan timeout):使当前线程暂停执行指定的 
TimeSpan。 - Start():启动此线程的执行。
 - Start(Object parameter):启动此线程的执行,将 
parameter传递给线程方法的ThreadStart或ParameterizedThreadStart委托。 
当使用多线程编程时,通常建议优先考虑使用更高级的抽象,如 Task 和 async/await,它们提供了更简洁、更易于使用的异步编程模型。然而,在某些情况下,直接使用 Thread 类可能是必要的或更合适的。在这些情况下,了解 Thread 类的属性和方法是非常有用的。