一、基本概念
Thread 类是多线程中比较常用的一个类,有关类的详细可以通过VS中进行查看。下面介绍一下比较常见的几个方法和属性。
1、构造函数
public Thread(ParameterizedThreadStart start); //此构造函数接收一个有参数的委托,以此来执行委托中的方法
public Thread(ThreadStart start); //此构造函数接收一个无参数的委托,以此来执行委托中的方法
public Thread(ParameterizedThreadStart start, int maxStackSize); //maxStackSize为最大堆栈的大小
public Thread(ThreadStart start, int maxStackSize);
//下面作为补充
//public delegate void ParameterizedThreadStart(object obj); //接收一个参数,无返回值的委托
//public delegate void ThreadStart(); //无参,无返回值的委托
2、public bool IsBackground { get; set; } //表示此线程是否为后台线程
//false为前台线程,进程结束后,任务执行完毕以后,线程才结束
//true为后台线程,进程结束,线程结束
3、public int ManagedThreadId { get; } //获取当前线程唯一标识符
4、public void Abort(); //终止线程,其实就是抛出个异常
5、public void Suspend(); //挂起也就是暂停线程 (已被弃用)
6、public void Resume(); //将挂起的线程继续,也就是回复线程 (已被弃用)
7、public void ResetAbort(); //是把中介的线程再次启用,都会有延时的
8、public void Sleep(200) ; //线程睡眠
9、public bool Join(int millisecondsTimeout); //会阻塞,必须等到线程结束后才会执行下一步
public bool Join(TimeSpan timeout); //会阻塞,必须等到线程结束后才会执行下一步
10、public static void Sleep(int millisecondsTimeout); //线程睡眠
public static void Sleep(TimeSpan timeout); //线程睡眠
11、public void Start(); //另开线程开始执行
public void Start(object parameter); //另开线程开始,带参数
二、实验预备
1、新建两个方法用作实验
#region //两个共用方法用作调用
public void doSomething1(string name) //定义一个方法名为doSomething1()
{
Console.WriteLine("doSometing1方法调用开始");
Thread.Sleep(2000); //将当前的线程暂停2000ms即2秒