C# Winfrom 进程&多线程
进程:
首先需要引用命名空间:
using systemDiagnostics;
最简单的打开进程的方法,进程名并不是汉字:
Process.start("calc");//clac是计算器的进程,使用这个方法就可以打开计算器了
Process.start("notepad");//可以同时打开多个进程,notepad是记事本
以浏览的方式打开一个进程:
//首先把一个进程的路径输出到TextBox里;
//返回一个bool类型
DialogResult dr = openFiledialog1.ShowDialog();
//判断
if(dr==Diagloresult.OK)
{
textbox1.text = openFiledialog.FileName
}
//把文件路径输出到文本框内后,直接打开文本框内的路径
Process p = new Process;
//开始处理这个信息,信息在textbox内
ProcessStartInfo psi = new ProcessStartInfo(textbox1.text);
p.StartInfo = psi;
p.Start();
如果用指定浏览器输出一个进程的话可以用Process.Start("Chrome","http://www.baidu.com");
默认浏览器直接输出即可Process.Start("http://www.baidu.com");
多线程:
using System.Threading;
Thread.Sleep();
一个线程同一时间只能做一件事情;
新建一个线程(前台线程):
主线程停了,后台线程还继续
//委托的关键字delegate
Thread tr = new Thread(需要写一个委托,委托是指向一个方法的,委托不需要写括号,只需要写方法名即可);
//线程用完后直接删掉,等下次执行方法的时候又重新new了一个新的线程
后台线程:
主线程停了后台线程立即停止;
Thread th = new Thread(委托); //创建对象
th.IsBackground = true; //设置后台线程
th.Start(); //开始执行
“关监控”的方法:
构造函数中,构造方法下部添加:
Control.CheckForIllegalCrossThreadCalls = false;
C# Winfrom 进程&多线程的更多相关文章
- day37-多进程多线程二-锁
Lock组件 当我们用多进程来读写文件的时候,如果一个进程是写文件,一个进程是读文件,如果两个文件同时进行,肯定是不行的,必须是文件写结束以后,才可以进行读操作.或者是多个进程在共享一些资源的时候,同 ...
- socket--多进程,多线程服务器
一:概念: 我们知道IP地址是标志网络中不用主机的IP地址,而端口号就是同一台主机上标志不同进程的地址,IP地址和端口号标志网络中的唯一地址.(又称socket) 在TCP协议中,建⽴立连接的两个进程 ...
- 【2017-05-04】winfrom进程、线程
一.进程 一个进程就是一个程序,利用进程可以在一个程序中打开另一个程序. 1.开启某个进程Process.Start("文件缩写名"); 注意:Process要解析命名空间. 2. ...
- winfrom进程、线程、用户控件
一.进程 一个进程就是一个程序,利用进程可以在一个程序中打开另一个程序. 1.开启某个进程Process.Start("文件缩写名"); 注意:Process要解析命名空间. 2. ...
- day38-多进程多线程-进程池
强大的Manage上一篇的数据共享的方式只有两种结构Value和Array.Python中提供了强大的Manage专门用来做数据共享的,其支持的类型非常多,包括,Value, Array,list,d ...
- 【2017-05-04】winfrom进程、线程、用户控件
一.进程 一个进程就是一个程序,利用进程可以在一个程序中打开另一个程序. 1.开启某个进程Process.Start("文件缩写名"); 注意:Process要解析命名空间. 2. ...
- fork多线程进程时的坑(转)
add : 在fork多线程的进程时,创建的子进程只包含一个线程,该线程是调用fork函数的那个线程的副本.在man fork中,有The child process is created with ...
- Python并发编程04 /多线程、生产消费者模型、线程进程对比、线程的方法、线程join、守护线程、线程互斥锁
Python并发编程04 /多线程.生产消费者模型.线程进程对比.线程的方法.线程join.守护线程.线程互斥锁 目录 Python并发编程04 /多线程.生产消费者模型.线程进程对比.线程的方法.线 ...
- C# 多线程,论多核时代爱恨情仇
为什么要学习多线程? 2010年1月21日是10年某市公务员考试的报名截止日.因从下午2点开始,用于报名的北京市人事考试网瘫痪,原定于昨天下午5点截止的报名时间延迟至今天上午11点. 2011年3月1 ...
随机推荐
- vue二次实战
vue爬坑之路 npm uninstall 模块名(删除指定模块) https://www.cnblogs.com/wisewrong/p/6255817.html vue快速入门 https://s ...
- 关于我使用spring mvc框架做文件上传时遇到的问题
非常感谢作者 原文:https://blog.csdn.net/lingirl/article/details/1714806 昨天尝试着用spring mvc框架做文件上传,犯了挺多不该犯的毛病问题 ...
- Chromecast
Chromecast chrome://cast/#offers https://chromecast.com/help https://www.pcmag.com/feature/326584/24 ...
- python数据结构与算法第十三天【归并排序】
1.代码实现 def merge_sort(alist): if len(alist) <= 1: return alist # 二分分解 num = len(alist)/2 left = m ...
- flask保存 文件到本地
本篇队长介绍一下如何 把前端上传的文件保存 到 后端flask项目目录 首先讲一下上传.保存文件的思路: 第一步:前端通过post请求方式提交上传的文件 <input id="file ...
- JS--dom对象:document object model文档对象模型
dom对象:document object model文档对象模型 文档:超文本标记文档 html xml 对象:提供了属性和方法 模型:使用属性和方法操作超文本标记性文档 可以使用js里面的DOM提 ...
- Nginx简单的负载均衡入门
nginx是用来管理tomcat的,只管理tomcat,并没有管理具体tomcat里面的项目,这里实现了简单的nginx管理两个tomcat的配置,注意upstream节点应该配置到service节点 ...
- How to enable mp3 on Ubuntu
apt install gstreamer1.0 libavcodec57
- 用于Azure功能的Visual Studio 2017工具
今天我们很高兴地宣布发布第一个预览的Visual Studio 2017工具的Azure功能.这个预览介绍了一些令人兴奋的变化,我们以前的版本.此外,除了支持Visual Studio 2017之外, ...
- load加载层-layui
加载样式 //eg1 var index = layer.load(); //eg2 var index = layer.load(1); //换了种风格 //eg3 var index = laye ...