WinForm 窗体应用程序(初步)之三

进程:

进程,简单的说,就是让你的程序启动另一个程序。

1、Process.Start("calc");//启动计算器

弊端:只认识系统自带的程序,如果写错系统会崩溃。

2.

//实例化进程类
Process p = new Process();
//创建进程开启路径对象
ProcessStartInfo psi = new ProcessStartInfo(textBox1.Text);
//进程类开启路径指向
p.StartInfo = psi;
p.Start();//开启进程,但不是马上开启,但可认为是马上开启

线程:

简单的说,允许你的程序同时进行多项任务。

两个问题:1、程序默认不允许跨线程访问对象

需要在构造函数中,实例化方法下面加上这句话:
Control.CheckForIllegalCrossThreadCalls = false;

2、

程序默认所有的线程都为:前台线程

解决办法:将新开的线程变为后台线程
th.IsBackground = true;

线程程序主要写法

线程所在的命名空间:System.Threading;
线程类:Thread th = new Thread(方法名);
//没有不要参数的构造函数,常用的为,1个参数,参数类型是委托类型,需要一个方法指向

变为后台线程:
th.IsBackground = true;

线程启动:
th.Start();

如果要执行带参数的方法,那么这个方法的参数必须是object类型,参数传递的位置在Start方法的括号中

允许跨线程访问对象:
在构造函数的构造方法下面加上:
Control.CheckForIllegalCrossThreadCalls = false;

停止线程:
th.Abort();

原文地址:https://www.cnblogs.com/xsddxz/p/5914236.html