请问关于c的具体应用场景有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1397个文字,预计阅读时间需要6分钟。
Thread类相对于线程池中的线程,使用者拥有更多的控制权。该类允许创建前台线程,设置线程优先级等。Thread类的构造函数接受ThreadStart和ParameterizedThreadStart类型的委托参数。
Thread类相对于线程池中的线程,使用者有更多的控制权。该类允许创建前台线程,设置线程优先级等。Thread类的构造函数重载为接受ThreadStart和ParameterizedThreadStart类型的委托参数。
1、给线程传递数据
给线程传递数据的两种方式:
1.使用带ParameterizedThreadStart委托参数的Thread构造函数:
//定义一个数据类型,传递给线程 public struct Data { public string Message; } //创建一个方法,将方法给线程的ParameterizedThreadStart委托 static void ThreadMainWithParameters(object obj) { Data d = (Data)obj; Console.WriteLine("Running in a thread, received {0}", d.Message); } static void Main() { Data d = new Data { Message = "Info" };//创建一个数据实例 Thread t2 = new Thread(ThreadMainWithParameters);//创建线程 t2.Start(d);//启动线程,并传递参数 }
2.自定义一个类,把线程的方法定义为实例方法,然后初始化实例的数据后启动线程。
本文共计1397个文字,预计阅读时间需要6分钟。
Thread类相对于线程池中的线程,使用者拥有更多的控制权。该类允许创建前台线程,设置线程优先级等。Thread类的构造函数接受ThreadStart和ParameterizedThreadStart类型的委托参数。
Thread类相对于线程池中的线程,使用者有更多的控制权。该类允许创建前台线程,设置线程优先级等。Thread类的构造函数重载为接受ThreadStart和ParameterizedThreadStart类型的委托参数。
1、给线程传递数据
给线程传递数据的两种方式:
1.使用带ParameterizedThreadStart委托参数的Thread构造函数:
//定义一个数据类型,传递给线程 public struct Data { public string Message; } //创建一个方法,将方法给线程的ParameterizedThreadStart委托 static void ThreadMainWithParameters(object obj) { Data d = (Data)obj; Console.WriteLine("Running in a thread, received {0}", d.Message); } static void Main() { Data d = new Data { Message = "Info" };//创建一个数据实例 Thread t2 = new Thread(ThreadMainWithParameters);//创建线程 t2.Start(d);//启动线程,并传递参数 }
2.自定义一个类,把线程的方法定义为实例方法,然后初始化实例的数据后启动线程。

