随笔分类 - C#-多线程
摘要:一、async和await两个修饰符 C#5.0的时候引入了async和await两个修饰符,成为异步编程的核心关键字。async 是修饰符,表明方法含有异步操作,但并不是说整个方法是异步的。async修饰的方法会先同步执行到第一处await的地方而后开始异步。await可以理解为一异步特有的“re
阅读全文
摘要:1.代码1 2.代码2 更多: C# 异步编程Task整理(二)异常捕捉 C# 异步编程Task整理(一) C# Process获取当前进程信息
阅读全文
摘要:一、在任务并行库中,如果对任务运行Wait、WaitAny、WaitAll等方法,或者求Result属性,都能捕获到AggregateException异常。 可以将AggregateException异常看做是任务并行库编程中最上层的异常。 在任务中捕获的异常,最终都应该包装到AggregateE
阅读全文
摘要:一、简介 .Net Framework 4.0新增了一个System.Threading.Tasks命名空间,它包含的类提供了任务的相关操作。使用任务不仅可以获得一个抽象层,还能对底层线程进行很多统一的控制操作。 主要类:Task(任务),TaskFactory(任务工厂),TaskSchedule
阅读全文
摘要:1.获取当前进程信息整理 Process.GetCurrentProcess(),返回当前程序的进程对象。 更多: C#进程启动实例 C# 进程和线程 C# 进程和线程
阅读全文
摘要:1.ApartmentState 指定的单元状态 Thread。 命名空间: System.Threading程序集: mscorlib(位于 mscorlib.dll) 成员 成员名称说明 MTA Thread 将创建并进入一个多线程的单元。 STA Thread 将创建并进入一个单线程单元。 U
阅读全文
摘要:一、Monitor类说明,提供同步访问对象的机制。 1.位于System.Threading命名空间下,mscorlib.dll程序集中。 2.Monitor通过获取和释放排它锁的方式实现多线程的同步问题。 3.Monitor实现当前进程内的多线程的同步,和lock语句的功能类似。 4.当前为静态类
阅读全文
摘要:一、lock关键词说明 1. lock 关键字将语句块标记为临界区,方法是获取给定对象的互斥锁,执行语句,然后释放该锁。 2. lock 语句块锁定,功能等同于 3. lock语句块锁定和Monitor线程锁,不能跨进程同步 二、备注 lock 关键字可确保当一个线程位于代码的临界区时,另一个线程不
阅读全文
摘要:在程序开发中,一个程序经常需要去调用其他的程序,C#中Process类正好提供了这样的功能。它提供对本地和远程进程的访问并使您能够启动和停止本地系统进程。一、启动进程实例 Process myProcess = new Process(); try { myProcess.StartInfo.Use
阅读全文
摘要:线程操作主要用到Thread类,他是定义在System.Threading.dll下。使用时需要添加这一个引用。该类提供给我们四个重载的构造函 构造函数定义: 无参数委托 有一个参数object委托 一、创建没有参数传入线程 二、创建一个参数传入object类型的线程 三、创建使用对象实例方法,创建
阅读全文
摘要:C#通过程序来调用cmd命令的操作 需要提醒注意的一个地方就是:在前面的命令执行完成后,要加exit命令,否则后面调用ReadtoEnd()命令会假死。 我在之前测试的时候没有加exit命令,输入其他命令后窗口就假死了,也没有输出内容。 对于执行cmd命令时如何以管理员身份运行,可以看我上一篇文章:
阅读全文
摘要:在需要创建的线程很多,且都是比较小的线程的情况下,可以使用线程池(ThreadPool类)。ThreadPool是一个静态方法,提供了对一个线程集合的操作,它会在线程数不足时增加线程,空闲线程数过多时释放资源。 1、ThreadPool简单应用 调用ThreadPool.QueueUserWorkI
阅读全文
摘要:转载地址:http://blog.csdn.net/wangzhiyu1980/article/details/45497907 此文为个人学习《C#并行编程高级教程》的笔记,总结并调试了一些文章中的代码示例。 在以后开发过程中可以加以运用。 对于并行任务,与其相关紧密的就是对一些共享资源,数据结构
阅读全文
摘要:1.调用widnows资源管理器打开文件夹 2.调用IE浏览器打开指定的网址
阅读全文
摘要:在多线程应用(一个或多个处理器)的计算中会使用到同步这个词。实际上,这些应用程序的特点就是它们拥有多个执行单元,而这些单元在访问资源的时候可能会发生冲突。线程间会共享同步对象,而同步对象的目的在于能够阻塞一个或多个线程,直到另一个线程使得某个特定条件得到满足。 我们将看到,存在多种同步类与同步机制,
阅读全文
摘要:5.1 简介 进程(process)是一块包含了某些资源的内存区域。操作系统利用进程把它的工作划分为一些功能单元。 进程中所包含的一个或多个执行单元称为线程(thread)。进程还拥有一个私有的虚拟地址空间,该空间仅能被它所包含的线程访问。 当运行.NET程序时,进程还会把被称为CLR的软件层包含到
阅读全文