线程

来源:互联网 发布:百度作业帮优化答案 编辑:程序博客网 时间:2024/06/05 21:00

1、进程: Process类

一些静态方法:Process.GetProcesses();item.kill(); process.start(“calc”)(mspaint/notepad/"ieplore",'http//...')

打开指定文件需创建对象,p=new Process();p.startInfo=new ProcessStartInfo("c.txt");p.start();

2、单线程bug,窗体假死,主线程草种窗体,运行后,主线程执行其他方法,需用多线程

Thread th=new Thread(方法名); th.start()表示th准备就绪可以随时被cpu执行。

3、前台线程:只有所有的前台线程都关闭后,进程才能终止,程序才能关闭,默认是前台。

后台线程:只要所哟前台关闭后,后台自动关闭。th.isbackGround= true;

4、跨线程访问,.net环境下是不允许跨线程访问的,但是可以取消跨线程访问异常:Control.ChenckForIllegalCrossTread..=False;

注:关闭窗口时,主线程会立即结束,th还没立即结束,还会执行一小会,会用到主程序资源,会出错,

FormClosing{if(th!=null) th.Abort()} Abort后不能再start了,Thead.Sleep(3000)

5、其他:

小播放器:ofd=new OpenFileDialog();ofd.Initialdialog="C:\\" string[] path=ofd.FileNames;(可多选)

ListBox.Items.Add(Path.GetFileName(path[i]));listSongs.Add(path[i])

sp=new Soundplayer();sp.SouLocation=listSongs[listBox1.selectedInndex];sp.play();


线程执行带参数方法,要求必须是object类型。

0 0
原创粉丝点击