黑马程序员--多线程

来源:互联网 发布:手机淘宝怎么搜索达人 编辑:程序博客网 时间:2024/04/28 06:19

---------------------- ASP.Net+Android+IO开发、.Net培训、期待与您交流! ----------------------

 

     线程与进程的关系

一个程序就相当于一个进程;

一个进程至少有一个线程;

同一个进程中的多个线程之间可以“并发”执行;

●  线程

1)一个线程一次只能完成一个任务;

2)多线程方法重入:CPU是不断的在多个线程之间来回切换执行的

3)前台线程:只有所有的前台线程都关闭,才能完成程序的关闭;

后台线程:只要所有的前台线程结束,后台线程自动结束;

4TextBox.CheckForIllegalCrossThreadCalls=false:是否检查TextBox控件在多个线程之间调用的合法性,false表示关闭该检查;

5Thread.CurrentThread.Name:获得当前正在运行的线程的名字;

●创建线程

1)创建一个线程,应先为该线程准备一个方法,线程运行时,通过委托调用该方法,从而执行方法里的代码(该委托的签名没有返回值,参数为object类型或无参数,所以准备的方法也应该没有返回值,参数为object类型或无参数);

2)方法Start[参数]):启动线程,标记线程可以被CPU执行了,但具体执行时间由CPU决定;

Start()方法的重载可以传入object类型的参数,从而实现了线程执行带单个参数的方法;

可以对准备的方法里object类型的参数进行处理,从而实现线程执行带多个参数的方法,例如:List<string> list=obj as List<string>

3)属性IsBackground=true:设置为后台线程;

4)属性Name:给线程取名字;

 

---------------------- ASP.Net+Android+IO开发、.Net培训、期待与您交流! ----------------------

原创粉丝点击