C#中如何获得程序中所有正在运行的线程

爱上不会游泳的鱼 2011-07-01 10:13:38
在winform中有一个父窗口,和几个子窗口,子窗口中有前台线程,当我直接关闭父窗口的时候,程序就有出息异常。 异常信息就是Application.Run(new Form1());提示是调用的目标发生了异常。我估计是前台线程没处理完就关闭程序导致的问题。我想在关闭父窗口之前,先获得所有的线程,如何杀死他。但不知道怎么样获得。这方法也不知道对不对,或者还有没有其他的方法,请教各位朋友,先说声谢谢了。
...全文
4369 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
GT7466 2011-07-19
  • 打赏
  • 举报
回复

//当前进程
Process current = Process.GetCurrentProcess();
//进程下线程
ProcessThreadCollection allThreads = current.Threads;
//当前线程
Console.WriteLine("ID:{0}", Thread.CurrentThread.ManagedThreadId);
uncarman 2011-07-18
  • 打赏
  • 举报
回复
顶顶顶
CPPWorking 2011-07-17
  • 打赏
  • 举报
回复
我想你是要获得当前进程中的所有线程,是这样子的吗?

如果是,你可以先获取当前的进程.

Process current = Process.GetCurrentProcess();

ProcessThreadCollection allThreads = current.Threads;

http://msdn.microsoft.com/zh-cn/library/system.diagnostics.process.threads(v=vs.85).aspx
张云飞VIR 2011-07-08
  • 打赏
  • 举报
回复
在关闭主窗体时,调用Applicat.ExitThread,然后调用 Application.Exit
cosmo_sei 2011-07-07
  • 打赏
  • 举报
回复
单从标题回答:
获得进程的process实例p,使用p.GetThreads获得线程集合。

从描述看,你需要的是在线程初始化的时候将线程设置为后台线程:
thread1.IsBackground = true;
isjoe 2011-07-02
  • 打赏
  • 举报
回复
改成后台线程就可以了,这样主窗口关闭的时候会自动关闭这些线程。
bdmh 2011-07-01
  • 打赏
  • 举报
回复
用api函数吧,获取当前进程的快照
CreateToolhelp32Snapshot
Thread32First
。。。
自己百度
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 dddd235 的回复:]
C# code

System::Diagnostics::Process:GetCurrentProcess()->Kill();



在父窗口Closed时间中 添加如上代码试试
[/Quote]
现在我是不知道怎么样获取所以正在运行的线程
dddd235 2011-07-01
  • 打赏
  • 举报
回复

System::Diagnostics::Process:GetCurrentProcess()->Kill();


在父窗口Closed时间中 添加如上代码试试
xuexiaodong2009 2011-07-01
  • 打赏
  • 举报
回复
Application.exit(),直接退出
微信小程序系统教程[初级阶段],微信小程序0基础学起,讲解微信小程序开发的基础知识。 微信小程序系统教程共有“微信小程序系统教程[初级阶段]”、“微信小程序系统教程[级阶段]——核心技术”、“微信小程序系统教程[阶段]客服消息+微信支付+九宝电商系统”。 “微信小程序系统教程[阶段]全套课程”包含: 1.微信小程序系统教程[阶段]_客服消息 2.微信小程序系统教程[阶段]_微信支付 3.微信小程序系统教程[阶段]_九宝电商系统 学习“微信小程序系统教程[阶段]”要求有微信小程序的基础。建议先学习“微信小程序系统教程[初级阶段]”、“微信小程序系统教程[级阶段]”,后在报名“微信小程序系统教程[阶段]”。 阶段讲解的客服消息,是针对小程序的。后台程序用接近底层的技术,没有使用三方技术。这样降低同学们学习成本。 微信支付,这部分课程很有难度,要求同学们认真听讲,有不会的技术问题可以请教老师。购买课程后请联系老师,提供单号,给你源程序。 九宝电商系统是一套十分适和学习、项目的课程。既可以系统的学习微信小程序相关知识,还可以修改后上线。 “微信小程序系统教程[级阶段]——核心技术”重点讲解微信小程序事件、组件、API 微信小程序系统教程[初级阶段],微信小程序0基础学起,讲解微信小程序开发的基础知识。 购买课程的同学,可赠送就九宝老师编写的《微信小程序开发宝典》。 购课请咨询qq2326321088
书籍目录: 第1篇 Visual C#基础编程实例 实例1 C#经典程序--Hello World 实例2 C#的简单输入输出(I/O) 实例3 C#的复杂输入输出(I/O) 实例4 通信录管理与维护 实例5 文件与目录管理 实例6 用户界面上的“Hello,World!” 实例7 组件化“Welcome”程序 实例8 网络上的“Hello World” 实例9 Ref、Out与Params描述符的应用 实例10 C#自动内存管理的应用 实例11 一个有趣栈类的实现 实例12 垃圾收集器管理与应用 实例13 垃圾收集器算法控制与使用 实例14 调用栈记录异常点 实例15 使用C#异常的栈跟踪 实例16 运行期间检测变量类型 实例17 常用值类型的原型定义 实例18 打印杨辉三角形 实例19 比较学生信息 实例20 获取车辆信息 实例21 简单角色类游戏的制作 实例22 旅馆住宿登记情况表制作 实例23 长命名空间的应用 实例24 文件特征计数 实例25 文本框输入数据的验证 第2篇 Visual C#级编程实例 实例26 窗体背景颜色动态变化 实例27 C#属性及应用 实例28 C#属性Metadata的管理与应用 实例29 使用Context属性创建CallThreshold Service 实例30 使用应用程序域 实例31 创建C#组件与客户应用程序 实例32 用OpenFileDialog类浏览或打开文件 实例33 在C#程序获得Win32 API 实例34 从C#调用COM组件 实例35 在C#程序修改HTML文件标题 实例36 下载Web页面 实例37 创建多线程应用程序 实例38 多线程的多次加载 实例39 单个线程同步运行 实例40 多线程同步运行 实例41 线程Thread Relative Static跟踪与实现 实例42 线程池(ThreadPool)的应用 实例43 多线程互斥运行 实例44 多线程时钟应用程序 实例45 监视多线程 实例46 防止多线程应用程序死锁 实例47 文件同步操作与应用 实例48 在COM程序设计使用.NET组件 实例49 文件异步操作与多处理器系统 实例50 获取网络主机IP地址 实例51 C#对话信息框的应用 实例52 在C#快速调用Windows API 实例53 摄氏温度与华氏温度间相互转换(1) 实例54 摄氏温度与华氏温度间相互转换(2) 实例55 使用FileSystemWatcher组件监视Web服务器 实例56 由颜色名字产生对应颜色 实例57 使用索引指示器分析域名 实例58 C#版本的PingC 实例59 DNS客户程序 实例60 一个有趣的DOS实用程序 实例61 代表元基本应用 实例62 有趣的事件代表元 实例63 随机连续偶数发生事件处理 实例64 有趣的列表框窗体 实例65 数学函数应用 第3篇 Visual C#高级编程实例 实例66 文件夹的文件列表 实例67 读写文本文件 实例68 读写二进制文件 实例69 显示系统日期与时间(1) 实例70 显示差值的日期与时间(2) 实例71 时钟发生器应用 实例72 在.NET程序设计使用ATL 实例73 浏览Internet文件 实例74 在C#应用程序打开浏览器 实例75 显示Internet文件信息 实例76 Puzzle游戏 实例77 MDI窗体菜单设计(1) 实例78 MDI窗体菜单设计(2) 实例79 创建一个C#编辑器 实例80 网络端口扫描器 实例81 深入WinForms-地址簿应用(1) 实例82 深入WinForms--Image Viewer应用程序(2) 实例83 开饭时间提醒器(Meal Reminder) 实例84 服务器端C#实例 实例85 数字时钟设计技术 实例86 自动编译C#程序AutoCompiler 实例87 使用C#与ASP+编写File Uploder 实例88 访问注册表的硬件信息 实例89 设置“开始”菜单 实例90 在“新建”添加自己的文件类型 实例91 显示Exchange软件的客户名称 实例92 读取Windows注册表信息 实例93 自定义AboutBox组件 实例94 自定义控件及应用 实例95 Java与C#混合编程的应用 实例96 C#与C++混合编程的应用 实例97 C#与VB混合编程的应用 实例98 C#组件与C#客户程序编程的应用 实例99 C#与XML联合应用XMLHelper 实例100 在C#部署应用

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧