上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
第15章
进程与进程间通信
本章重点介绍与进程相关的.NET编程技术。
由于进程是由操作系统管理的,要想真正掌握好本章所介绍的技术,必须对操作系统的基本原理有所了解。笔者假设读者学过《操作系统原理》这门计算机专业的必修课程,否则阅读本章会遇到困难。如果读者还阅读过直接介绍Windows操作系统原理的技术书籍,那就更好了。
15.1节主要介绍操作系统如何管理进程和线程,这部分内容虽然绝大多数《操作系统》教材都有介绍,但本节所介绍的内容全部是基于Windows的,并且着眼点是.NET开发,显然针对性更强。另外,由于进程与线程之间存在着密不可分的关系,因此,虽然要到下一章才开始介绍线程,本节也有涉及线程的内容。
.NET基类库中提供了一个process组件来控制过程,15.2节介绍如何使用这一组件启动和提前中止特定的进程。15.3节通过实例介绍.NET 4.0实现进程通信的各种方式,是本章的重点,涉及到较多的.NET编程知识,简介如下:
1)许多例子都用到了第13章《对象的复制与序列化》所介绍的序列化技术。
2)15.3.5节使用.NET线程同步对象Mutex和EventWaitHandle实现进程通知机制,对这两个同步对象的介绍请参看17.3节《等待句柄》。
3)某些涉及的技术本身就是一个很大的领域,比如15.3.4节介绍了如何使用WCF命名管道绑定实现进程通信,而对WCF的介绍已超出了本书的范畴。对于这部分内容,如果读者还未掌握相应的技术,完全可以跳过,等到具备了相应的知识基础之后,再回过头来阅读。