首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下程序说明和C++程序,将程序段中(1)~(7)空缺处的语句填写完整。 [说明] 使用MFC的CSocket类在两个或者多个应用程序之间建立通信。服务器应用程序先创建一个特殊的 Socket,用于监听客户应用程序的连接请求,然后再创建新
阅读以下程序说明和C++程序,将程序段中(1)~(7)空缺处的语句填写完整。 [说明] 使用MFC的CSocket类在两个或者多个应用程序之间建立通信。服务器应用程序先创建一个特殊的 Socket,用于监听客户应用程序的连接请求,然后再创建新
admin
2010-01-15
46
问题
阅读以下程序说明和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://kaotiyun.com/show/X0DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
安全防护策略是软件系统对抗攻击的主要手段,安全防护策略不包括______。
以下关于模块耦合关系的叙述中,耦合程度最低的是__________(39),其耦合类型为___________(40)耦合。(40)
下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,则完成该项目的最少时间为_____________(34)天。活动BD最多可以晚开始______________(35)天而不会影响整个项目的进度。(35)
如果在查找路由表时发现有多个选项匹配,那么应该根据___________(25)原则进行选择。假设路由表有4个表项如下所示,那么与地址139.17.179.92匹配的表项是____________(26)。(25)
设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a~e五种情况,(26)两种情况可能会发生死锁。对于这两种情况,若将(27),则不会发生死锁。
在分层体系结构中,(41)实现与实体对象相关的业务逻辑。在基于Java,EE技术开发的软件系统中,常用(42)技术来实现该层。(42)
下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,则里程碑(33)在关键路径上。活动GH的松弛时间是(34)。(33)
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数已经排好序,将第i个整数依次和第i-1,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行(31)
下面是路由表的4个表项,与地址220.112.179.92匹配的表项是________。
开发专家系统时,通过描述事实和规则由模式匹配得出结论,这种情况下适用的开发语言是(19)。
随机试题
A、B公司分别为母公司C控制下的两家子公司。A公司于2006年8月自母公司C处取得B公司的100%的股份,合并后B公司仍维持其法人地位。为进行企业合并,A公司支付了2000万元。假定双方的会计政策一致。相关数据如下:合并日B公司股本900万元,资本公积1
阅读下面的文字,然后回答问题。悠久而丰富的中华散文传统中国是散文大国,春秋时期就确立了散文的基本形式。那时的先哲们以其不朽的笔创作的各种题材的散文
潜伏期延长是指初产妇第一产程潜伏期超过
使用者在占有某块土地时,土地只能提供现时的纯收益。()
个人贷款利率需同时符合中国人民银行同商业银行总行对相关产品的风险定价政策,并符合商业银行总行利率授权管理规定,个人经营贷款可在()的基础上上浮或适当下浮。
理查-范乐尔说,“大部分的广告创意都必须要有两个基本的点子:一个是像广告心脏般的核心创意点,另一个就是执行的想法,以便赋予核心创意在荧光屏上或者平面图页上的生命”。下列关于这两者的关系说法不正确的是()。
胡萝卜、西红柿和其他一些蔬菜含有较丰富的β-胡萝卜素,β-胡萝卜素具有防止细胞癌变的作用。今年来提取出来的β-胡萝卜素被制成片剂并建议吸烟者服用,以防止吸烟引起的癌症。然而,意大利博洛尼亚大学和美国得克萨斯大学的科学家发现,经常服用β-胡萝卜素片剂的吸烟者
Arightinremisarightinathingitselfwhichisgoodagainstthewholeworld.
AsaverysmallchildIusedtoimaginethatIwas,say,RobinHood,andpicturemyselfastheheroofthrillingadventures,but
AfterSusanJoycewaslaidoff,shewashorrifiedtohearoftwosuicidesinherlayoffgroup.Suchcasesmaysound【C1】______,b
最新回复
(
0
)