C#网络编程之进程管理

  这里是视频讲解地址:

  这里是代码:

  

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Linq;
  4 using System.Net;
  5 using System.IO;
  6 using System.Text;
  7 using System.Threading.Tasks;
  8 using System.Windows;
  9 using System.Windows.Controls;
 10 using System.Windows.Data;
 11 using System.Windows.Documents;
 12 using System.Windows.Input;
 13 using System.Windows.Media;
 14 using System.Windows.Media.Imaging;
 15 using System.Windows.Navigation;
 16 using System.Windows.Shapes;
 17 using System.Diagnostics;
 18
 19 namespace 我是蜀云泉
 20 {
 21     /// <summary>
 22     /// MainWindow.xaml 的交互逻辑
 23     /// </summary>
 24     public partial class MainWindow : Window
 25     {
 26         public MainWindow()
 27         {
 28             InitializeComponent();
 29         }
 30
 31         int FileIndex = 1;
 32         string FileName = "Notepad";
 33         List<Data> list = new List<Data>();
 34         List<int> IndexList = new List<int>();
 35
 36         private void Button_Click_1(object sender, RoutedEventArgs e)
 37         {
 38             string Path = Environment.CurrentDirectory + "//myfile" + (FileIndex++) + ".txt";
 39             if (File.Exists(Path)==false)
 40             {
 41                 File.CreateText(Path);
 42             }
 43             IndexList.Add(FileIndex);
 44
 45             Process p = new Process();
 46             p.StartInfo.FileName = FileName;
 47             p.StartInfo.Arguments = Path;
 48             p.Start();
 49
 50             Refresh();
 51         }
 52
 53
 54         public void Refresh()
 55         {
 56             datagrid1.ItemsSource = null;
 57             list.Clear();
 58             Process[] processes = Process.GetProcessesByName(FileName);
 59             foreach (var item in processes)
 60             {
 61                 try
 62                 {
 63                     list.Add(new Data (){
 64                     Id=item.Id,
 65                     ProcessName=item.ProcessName,
 66                     Memory=string.Format("{0}KB",item.WorkingSet64/1024d),
 67                     Time = item.StartTime.ToString("yyyy-M-d HH:mm:ss"),
 68                     FileNamePath = item.MainModule.FileName
 69                     });
 70
 71                 }
 72                 catch
 73                 {
 74                     break;
 75                 }
 76             }
 77             datagrid1.ItemsSource = list;
 78
 79         }
 80
 81
 82         private void Button_Click_2(object sender, RoutedEventArgs e)
 83         {
 84             Process[] processes = Process.GetProcessesByName(FileName);
 85             foreach (var item in processes)
 86             {
 87                 item.CloseMainWindow();
 88                 item.WaitForExit();
 89             }
 90             FileIndex = 1;
 91
 92             Refresh();
 93
 94         }
 95
 96         public  class Data
 97         {
 98             public int Id{get;set;}
 99             public string ProcessName { get; set; }
100             public string Memory { get; set; }
101             public string Time { get; set; }
102             public string FileNamePath { get; set; }
103         }
104
105
106
107     }
108 }
时间: 2024-10-15 07:58:45

C#网络编程之进程管理的相关文章

Node.js学习笔记【3】NodeJS基础、代码的组织和部署、文件操作、网络操作、进程管理、异步编程

一.表 学生表 CREATE TABLE `t_student` ( `stuNum` int(11) NOT NULL auto_increment, `stuName` varchar(20) default NULL, `birthday` date default NULL, PRIMARY KEY  (`stuNum`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 学生分数表 CREATE TABLE `t_stu_score` ( `id` int(11

(转)iOS 各种网络编程总结--进程、线程、Socket、HTTP、TCP/IP、TCP和UDP

######################################################### 进程与线程 进程和线程都是由操作系统分配和调度的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性. 进程是一块包含了某些资源的内存区域.操作系统利用进程把它的工作划分为一些功能单元.进程中所包含的一个或多个执行单元称为线程(thread).进程还拥有一个私有的虚拟地址空间,该空间仅能被它所包含的线程访问. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更

Linux基础: 网络命令和进程管理

? netstat lsof ps pstree pkill/kill (了解jenkins git,排查环境) 查询服务器之间是否有链接(netstat -an) 某个服务是否启动(了解服务对应的启动文件,ps grep)(了解服务对应的端口 netstat -tunl | grep 8080 查看服务启动的监听端口(netstat -tuln) 查看oasis对应的zookeeper,netstat -an|grep zookepper端口/oasis端口 看看各个日志 ----------

(二)Linux实操之——网络配置、进程管理、服务管理、组管理

接上段   (一)Linux实操之——权限.任务调度.磁盘分区 4.网络配置 4.1 NAT模式的网络配置 目前我们采用的网络配置是NAT模式. windows下cmd通过 ipconfig 命令可以得到本机的网络配置. linux下通过 ifconfig 可得到虚拟机的网络配置 在windows系统中运行着虚拟机中的linux系统,那么两个系统是怎么通信的呢? 实际上windows系统与本机的linux的通信是通过 VMnet8的虚拟网卡来进行的,两者形成网络,192.168.177.128

网络编程之进程理论简介

背景知识: 顾名思义,进程即一个软件正在进行的过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老的也是最重要的抽象概念之一.操作系统的其他所有内容都是围绕进程的概念展开的.所以想要真正了解进程,必须先了解操作系统.详见博客点击进入. 须知的理论基础: #一 操作系统的作用: 1:隐藏丑陋复杂的硬件接口,提供良好的抽象接口 2:管理.调度进程,并且将多个进程对硬件的竞争变得有序 #二 多道技术: 1.产生背景:针对单核,实现并发 ps

Python网络编程(进程通信、信号、线程锁、多线程)

什么是进程通讯的信号? 用过Windows的我们都知道,当我们无法正常结束一个程序时, 可以用任务管理器强制结束这个进程,但这其实是怎么实现的呢? 同样的功能在Linux上是通过生成信号和捕获信号来实现的, 运行中的进程捕获到这个信号然后作出一定的操作并最终被终止. 信号是UNIX和Linux系统响应某些条件而产生的一个事件, 接收到该信号的进程会相应地采取一些行动.通常信号是由一个错误产生的. 但它们还可以作为进程间通信或修改行为的一种方式, 明确地由一个进程发送给另一个进程.一个信号的产生叫

python网络编程之进程论

标签(空格分隔): 进程 什么是进程: 进程:正在进行的一个过程或者说一个任务.而负责执行任务则是cpu; 进程与程序的区别: 程序仅仅只是一堆代码而已,而进程指的是程序的运行过程 注意: 需要强调的是:同一个程序执行两次,那也是两个进程,比如打开暴风影音,虽然都是同一个软件,但是一个可以播放西游记,一个可以播放大话西游. 并发与并行: 无论是并行还是并发,在用户看来都是'同时'运行的,不管是进程还是线程,都只是一个任务而已,真是干活的是cpu,cpu来做这些任务,而一个cpu同一时刻只能执行一

网络编程——同一进程中的队列(多线程)

import queue queue.Queue() 先进先出 queue.LifoQueue() 后进先出 queue.PriorityQueue() 优先级队列 优先级队列 q = queue.PriorityQueue() q.put() 接受的是一个元祖 元祖中第一个参数是:表示当前数据的优先级 元祖中第二个参数是:需要存放到队列中的数据 优先级的比较(首先保证整个队列中,所有表示优先级的东西类型必须一致) 如果都是int 类型,比数值大小 如果都是str类型,比较字符串的大小(从第一个

ACE网络编程

ACE: Adaptive Communication Environment 自适应通信环境,属于主机基础设施中间件SAP:服务点访问ACE模拟提供了所以C++标准库的类下载地址:http://ace.ece.uci.edu/ 或 http://www.riverace.com1.网络通信的设计空间:1).通信空间:交互规则.形式2).并发空间:并发控制.同步3).服务空间:持续时间.结构4).配置空间:网络服务识别.绑定 2.面向对象中间件体系结构的层次1).主机基础设施中间件:对OS并发机