0927 进程和线程

Posted yanbignqi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了0927 进程和线程相关的知识,希望对你有一定的参考价值。

进程

  启动一个程序(.exe)默认就是增加一个线程,在任务管理器中能够看到.

第一种方法:

   Process.Start("calc");

   但是这种方法有一种弊端,只能启动windows认识的程序

第二种方法:

   Process pr = new Process();//实例化进程类

    ProcessStartInfo ps = new ProcessStartInfo(路径名);//给程序一个打开的路径名,用绝对路径

   pr.StartInfo = ps;//指向那个路径,就是告诉程序打开什么

   pr.Start();//开始执行

 

 

线程:

   就是进行这个进程的一个对象,在开启进程的时候默认一条线程运行,还是主线程.

写法:  using System.Threading;//运用命名空间

        Thread th = new Thread(aaa);实例化都需要参数,一般是函数,不需要写括号

        th.Start();//运行,如果函数需要传值,就在这个括号里写,而且函数接受的必须是object类型

        这种就是建立线程的方式,但写出来点击关闭不能立即停止需要改写为后台运行,在开始之前写上th.IsBackground = true;变为后台线程,关闭主窗体,线程就结束

 

 

函数传值:

   传值的时候,函数不能调用主窗体的参数需要在构造函数实例化下面写上Control.CheckForIllegalCrossThreadCalls = false;就可以了.

以上是关于0927 进程和线程的主要内容,如果未能解决你的问题,请参考以下文章

多线程和多进程的区别

进程和线程单线程多线程和多进程

进程和线程,线程安全,python如何实现多进程,多线程

进程与线程的问题

多线程和多进程模式有啥区别

什么是并发和并行?什么是进程和线程?进程和线程的区别