首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下程序说明和C++程序,将程序段中(1)~(7)空缺处的语句填写完整。 [说明] 使用MFC的CSocket类在两个或者多个应用程序之间建立通信。服务器应用程序先创建一个特殊的 Socket,用于监听客户应用程序的连接请求,然后再创建新
阅读以下程序说明和C++程序,将程序段中(1)~(7)空缺处的语句填写完整。 [说明] 使用MFC的CSocket类在两个或者多个应用程序之间建立通信。服务器应用程序先创建一个特殊的 Socket,用于监听客户应用程序的连接请求,然后再创建新
admin
2010-01-15
62
问题
阅读以下程序说明和C++程序,将程序段中(1)~(7)空缺处的语句填写完整。
[说明]
使用MFC的CSocket类在两个或者多个应用程序之间建立通信。服务器应用程序先创建一个特殊的 Socket,用于监听客户应用程序的连接请求,然后再创建新的Socket来完成连接。从客户和服务器两端读取该连接,直到一个需要处理的报文到来为止。以下C++程序将封装这些功能,这样所有应用程序需要完成的只是创建一个Socket连接,然后处理到来的报文。这将包括一个新的服务器Socket类、新客户端Socket类和新的报文队列类。
创建新的服务器Socket类程序的框架如下。第1个函数ListenEx()用于通知Socket开始监听客户应用程序。第2个函数OnAccept()在接收到连接请求时被调用。在其中创建新的Socket,并立刻设置它开始从客户应用程序读取报文,这些是通过调用第3个函数RecvThread()来完成的,该函数位于它自己的线程中。
[C++程序]
[ListenEX()函数]
选项
答案
这是一道要求读者使用Socket与另一个Windows应用程序或者与任何支持Socket的应用程序通信的编程题。本题的解答思路如下。 题干已给出“函数ListenEx()用于通知Socket开始监听客户应用程序”,ListenEx()通过调用CSocket的Listen()函数监听来自客户应用程序的连接请求。ListenEx()同时在结构中设置其调用参数,这些参数最终被传递到RecvThread()函数以实现读操作。因此()空缺处应填入“Listen()”。 函数OnAccept()在接收到连接请求时被调用。它使用文本编辑器(TextEdit)重载CSocket的OnAccept()函数,在其中将创建新的Socket,用于建立与客户应用程序的连接,同时使用由用户定义的标识符作为关键字将该Socket保存到对象映射表中。然后,设置Socket进入同步模式,并创建一个线程从套接字中读取数据。因此(2)空缺处应填入“newCSocket”,用于完成初始化工作。 函数RecvThread()使用CSocket的Receive()函数等待,直到通过套接字接收到新的报文。该线程假定每一个报文包含固定字长的报头和可变长度的报文体。对于每一个新的套接字报文,RecvThread()还向应用程序发送WM_New_MESSAGE消息,通知新的报文等待处理。如果套接字关闭,线程将在终止前向应用程序发送WM_DONE_MESSAGE消息,所以(3)空缺处应填入“len+=res”。该函数没有返回值,所以(4)空缺处应填入“return 0”。 接下来添加函数SendEx()向客户应用程序发回报文,该函数将根据用户定义的标识符从对象映射表中取出Socket对象,然后调用线程函数向该Socket发送报文,因此(5)空缺处应填入“m_mapSockets[id]”。 SendThread使用CSocket类的Send()函数将报文数据发送出去,因此(6)空缺处应填入“Send”。 服务器套接字类中的最后需要创建关闭函数,这个函数不仅将关闭监听套接字,而且将关闭创建的所有与客户端连接的套接字,因此(7)空缺处应填入“Close()”。
解析
转载请注明原文地址:https://www.kaotiyun.com/show/X0DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a~e五种情况,(26)两种情况可能会发生死锁。对于这两种情况,若将(27),则不会发生死锁。
某财务系统在使用过程中,因个人所得税政策变化,需修改计算工资的程序。这种修改属于______维护。
以下不属于系统测试范畴的是_______。
下图为某设计模式的类图,类State和Context的关系为(49),类(50)是客户使用的主要接口。(50)
下图中,类Product和ConcreteProduct的关系是(45),类ConcreteCreator和ConcreteProduct的关系是(46)。(46)
某公司采用的软件开发过程通过了CMM2认证,表明该公司(30)。
CPU中的数据总线宽度会影响(4)。
______不是正确的软件测试目的。A.尽最大的可能找出最多的错误B.设计一个好的测试用例对用户需求的覆盖度达到100%C.对软件质量进行度量和评估,以提高软件的质量D.发现开发所采用的软件过程的缺陷,进行软件过程改进
以下关于防火墙功能特性的说法中,错误的是______。
假设系统有n(n≥6)个并发进程共享资源R,且资源R的可用数为3。若采用PV操作,则相应的信号量S的取值范围应为________________。
随机试题
太康诗歌在艺术形式上的特点是【】
以下是集料水煮法操作步骤的有()。
防爆型电气设备有隔爆型、增安型、油浸型、充砂型、本质安全型、正压型、无火花型等类型。其中本质安全型设备的标志是()
设备监理目标的()表明按照承包合同、国家的技术规范和质量标准、劳动生产定额及经济参数制定的目标值是可行的、合理的。
沥青路面的施工中,试验段开工前( )天应安装好试验仪器和设备,配备好的试验人员报请监理工程师审核。
某证券公司拟设立全资期货公司,期货公司注册资本为1亿元,拟以2500万元人民币,以及经评估作价为2500万元的信息技术系统,抵债取得的对某公司的股权出资,拟经营的范围包括商品期货经纪、金融期货经纪和期货自营业务。某期货公司注册资本为8000万元,甲公司
假设2019年贾某取得稿酬所得40000元,那该笔收入所得应预扣预缴税款为()元。
(2012年)甲公司拥有A、B、C三家工厂,分别位于国内、美国和英国,假定各工厂除生产设备外无其他固定资产。2011年受国内外经济发展趋缓的影响,甲公司产品销量下降30%,各工厂的生产设备可能发生减值。该公司2011年12月31日对其进行减值测试,有关资料
《人民警察职业道德规范》的内容是()。
Itisnotconsidered______topickone’steethinpublic.
最新回复
(
0
)