一、说明
此为《C#网络应用编程》第三版 马骏 部分课后习题答案。
二、目录
- 第一章-网络应用编程入门知识
- 第三章-进程、线程与应用程序域
- 第四章-数据流与数据的加密和解密
- 第五章-异步编程
- 第六章-并行编程
- 第七章-WCF入门
- 第八章-WCF和HTTP编程
- 第九章-WCF和TCP编程
- 第十章-WCF和UDP编程
第一章-网络应用编程入门知识
1. 简述分散式、集中式和分布式通信模型的特点。
-
分散式:各自独立的计算机系统之间没有资源或信息的交换或共享,存在大量的数据冗余及数据不一致性,维护成本高
-
集中式:数据的存储和处理都在单个计算机系统上,用户终端只有显示器和键盘。优点是硬件成本低,无数据冗余和数据不一致性。缺点是可靠性低,访问速度受同时使用的用户数量影响,且无法满足特殊部门的数据要求
-
分布式:分散式和集中式的混合体,把分散的资源以一个整体的形式呈现给用户。数据冗余低,访问速度快。
-
分散式:各自独立的系统之间没有资源或信息的交换或共享。存在大量数据冗余且维护成本高,已被淘汰。
-
集中式:数据和管理功能都集中在单台计算机上,用户仅能通过终端来操作。优点是硬件成本低、无冗余和不一致性问题,缺点是可靠性和灵活性低,反应慢。
-
分布式:是分散式系统和集中式系统的混合体,是目前比较完善的解决方案。
2. 简述C/S和B/S的优缺点。
-
C/S结构的开发和维护成本比B/S高:采用C/S时对于不同客户端要开发不同的程序,且软件的安装、调试和升级都需要在所有客户机上进行。
-
C/S的客户端不仅负责与用户交互,收集用户信息,而且还需要完成通过网络向服务器请求对数据库、电子表格或文档等信息的处理工作,而B/S的客户端把事物处理逻辑部分交给服务器而客户端只需显示
C/S相对于B/S安全性更高,C/S可以通过严格的管理派发软件,达到保证系统安全的目的。 -
C/S是一种胖客户端应用程序编程架构,其主要工作都在客户端运行。优点是可以充分利用本地计算机的性能优势,缺点是需要在本机安装客户端软件。
-
B/S使用HTTP进行通信。优点是单台计算机可以访问任何Web服务器,缺点是B/S模式有沙盒限制。
3. 什么是套接字?套接字有哪几种类型?
-
套接字是一种通信机制,通信两方的一种约定,用套接字中的相关函数来完成通信过程。
类型:流套接字,数据报套接字,原始套接字。 -
套接字是支持TCP/IP网络通信的基本操作单元,是不同主机间的进程进行通信的端点。在一个套接字实例中,既保存了本机的IP地址和端口,也保存了对方的IP地址和端口,同时也保存了双方通信采用的网络协议等信息。
第三章-进程、线程与应用程序域
1. 简要回答下列问题。
(1)进程和线程有什么区别?为什么要用多线程?多线程适用于哪种场合?
(2)前台线程和后台线程有什么区别和联系?如何判断一个线程属于前台线程还是后台线程?如何将一个线程设置为后台线程?
(1)进程是正在执行的程序,线程是某个进程中的一个或多个执行流。多线程可让多个任务同时执行。当执行需要较长时间才能完成的连续操作时,或者等待网络或其他I/O设备相应时,都可以使用多线程技术。
ÿ