C#网络应用编程单元测试题

本题来自河南大学MOOC计算机学院的《网络应用编程》


单元测试1 网络应用编程入门

1、下列关于C/S模式说法错误的是(D
A.客户端功能丰富和灵活。
B.客户端的更新问题和跨平台问题都需要考虑。
C.访问本地计算机资源不受限制,充分利用本地计算机性能。
D.无需单独安装客户端。
2、System.Net命名空间下的Dns类说法正确的是(ABCD
A.DNS类可查询某个主机名或IP地址关联的IP地址集合
B.将域名转换为对应IP地址的过程称为域名解析
C.Dns类提供了方便的域名解析功能
D.Dns的域名解析的执行时间与网络延迟、网络拥塞等因素的影响有关
3、IP地址仅仅能够识别到某台主机,而不能识别该主机上的进程。(
4、搜狐(www.sohu.com)、百度(www.baidu.com)等门户网站为C/S模式开发。(×

B/S

5、IP地址的编制方案有IPV6和(IPV4)。

单元测试2 进程和线程

1、有关进程和线程的描述正确的是哪个(A
A.线程是进程中独立的执行流
B.一个进程只可包含一个线程
C.创建Process类的实例后不需要调用Start方法就可以启动进程
D.用Thread创建线程的实例后不需要调用Start方法就可以启动线程

A、将一个进程划分为若干个独立的执行流,每个独立的执行流都称为一个线程。
B、一个进程中既可以只包含一个线程,也可以同时包含多个线程。
C 、启动进程的两种方法:
①先创建Process类的一个实例,并通过StartInfo属性指定要运行的应用程序名称以及传递的参数,然后调用该实例的Start方法启动该进程。
②直接调用Process类提供的Start静态方法启动进程。
都调用了Start方法。
D、通过Thread创建线程实例后,线程启动调用该实例的Start方法

2、获得本机计算机上指定名称的进程应该使用哪个方法(A
A.GetProcessesByName方法
B.GetProcessById方法
C.GetProcesses方法
D.Process.Start方法

名称,故name

3、资源同步实现方式有哪些(BCD
A.实用using语句限定资源使用范围
B.用InterLocked类提供的静态方法锁定局部变量
C.用lock语句锁定代码块
D.用volatile修饰符锁定公共或私有字段

4、CPU执行程序中,在执行某语句时,不管该语句是否完成,都会继续执行其后面的语句。这种方式称为异步执行。(

5、线程同步的目的是为了防止多个线程同时访问某些资源时出现死锁和争用情况。(

6、在操作系统中,并发执行是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。(

7、用Thread创建的线程默认为后台线程(×

默认为前台线程。

8、只有当属于某个进程的所有前台进程都终止后,公共语言运行库才会结束该进程。(

9、进程创建需要使用(Process)类。

10、通过(Thread)类可创建一个单独的线程。

第三章测试内容没学,先不写了

第4章 异步编程测试

1、放在异步方法内部,用于表示等待异步执行结果的关键字为(C)。
A.Action
B.Func
C.await
D.async

Action委托封装了不带返回值的方法。
Func委托封装了带返回值的方法。
带async修饰符的普通方法称为异步方法。
await是一个运算符,表示等待异步执行结果。

2、取消任务执行时作为取消令牌使用的类是(A
A.CancellationToken
B.TaskCreationOption
C.TaskStatus
D.CancellationTokenSource

CancellationToken取消令牌
CancellationTokenSource取消源
TaskStatus枚举表示任务执行的状态
TaskCreationOption自定义任务行为的可选项,不指定,表示使用默认行为。

3、如果希望异步任务具有取消功能,可以在Task.Run()方法的第二个参数位置填入CancellationToken的对象作为取消令牌(

4、在基于任务的并行和异步编程模型中,会大量使用Lambda表达式、(Action)委托和Func委托。

5、开发异步方法时,需要在方法签名中使用异步关键字(async)和Task。

第5章 WCF入门测验

1、希望对Add 方法能够被客户端远程调用,下列关于服务协定设计正确的是
A、

[ServiceContract]
public Interface IService1
{
     double Add(double n1,double n2)
}

B、

public Interface IService1
{
      [Operation Contract]  double Add(double n1,double n2)
}

C、

[ServiceContract]
public Class Service1
{
     [Operation Contract] double Add(double n1,double n2)
}

D、

[ServiceContract]
public Interface IService1
{
     [Operation Contract] double Add(double n1,double n2)
}

D对IService1接口用ServiceContract特性声明了服务协定,对Add方法用OperationContract特性声明了操作协定。
设计服务协定
办法为:在接口前面用ServiceContract特性声明服务协定,在接口内部用操作协定公开操作方法。
只有应用了OperationContract特性的方法,才能被客户端远程调用。

2、WCF特点描述正确的是(ABCD
A.支持多种传输协议
B.支持多种消息交换格式
C.以服务为中心
D.具有统一性、安全性和可扩展性

此外,特点五为:支持工作流、事务以及持久性的消息处理。

3、类似地图服务、商品服务、天气数据获取服务等都可以利用WCF服务来构建。(

4、在服务端自定义了一个数据类MyData,该类只有拥有了数据协定,才能够被序列化后传送到客户端。(

5、对于WCF说终结点包含( 地址 )、协定和绑定组成,缺一不可。

第6章 WCF和HTTP应用编程

1、单向通信(isOneWay=true)可以有返回值。(

服务端不向客户端返回结果
使用 IsOneWay=true 标记的操作不得声明输出参数、引用参数或返回值

2、BasicHttpBinding支持双工通信。(

BasicHttpBinding实现基本HTTP绑定,无会话功能、无事务功能、不支持双工。

3、WCF服务有多种承载方式,IIS 可以用来承载WCF服务。(

利用IIS或WAS承载WCF服务
利用Windows服务承载WCF服务
自承载

4、WCF通信中HTTP协议的WSDualHttpBinding绑定方式可以支持双工通信(

5、回调接口在( 服务端或Server)定义,在客户端实现。

第7章 WCF和TCP应用编程

1、C/S模式下利用TcpClient类和TcpListner类和多线程技术构建服务端架构时,为了能够使得服务器端能够随时接受客户端的连接请求,并能够随时和任一客户端进行通信。假设至少有n个客户端,需要的辅助线程数量至少有( n+1)个。

使用TcpClient类和TcpListener类编写TCP应用程序的一般步骤中,没得到一个新的TcpClient对象,就创建一个与该客户端对应的线程,然后通过该线程与对应客户端通信。,此时n个辅助线程。
编写TCP客户端时,会创建一个线程监听指定的端口,循环接受并处理服务端发送过来的消息。
以上仅是叶子的理解,如果不对望大佬指点,叶子感激不尽。

2、下列关于TCP消息通信无边界的处理方法正确的有(ABCD
A.部分场合可发送固定长度的消息。
B.部分场合可将消息长度和消息一起发送。
C.部分场合可采用特殊的分隔符。
D.多种方法,可以结合BinaryReader,BinaryWriter对网络流进行封装实现。

3、WCF架构仅仅支持HTTP协议编程,不能支持TCP协议编程。(×

当然支持,看本章测试标题

4、TcpClient和TcpListener类结合多线程或者多任务编程方式可以构建C/S编程的网络通信框架结构,但编程难度较大。(
5、WCF和TCP协议结合使用,没有支持双工通信的绑定方式,只能采用请求应答方式。(×

支持双工,如NetTcpBinding

链接快递:综合测试题部分

  • 7
    点赞
  • 104
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值