版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一题 简答题1多线程和多进程模式有什么区别?在用两种模型开发效劳程序时,分别有什么优缺点?采用长连接和短连接模式有什么区别?分别有什么优缺点?采用同步和异步模式有什么区别?分别有什么优缺点。1启动进程的时候,操作系统会为进程分配资源,其中最主要的资源是内存空间,因为程序是在内存中运行的。在进程中,有些程序流程块是可以乱序执行的,并且这个代码块可以同时被屡次执行。实际上,这样的代码块就是线程体。线程是进程中乱序执行的代码流程。当多个线程同时运行的时候,这样的执行模式成为并发执行。对于一个进程中的多个线程来说,多个线程共享进程的内存块,当有新的线程产生的时候,操作系统不分配新的内存,而是让新线程
2、共享原有的进程块的内存。因此,线程间的通信很容易,速度也很快。不同的进程因为处于不同的内存块,因此进程之间的通信相对困难。线程切换快,但实现稍复杂。进程易实现,较稳定,但性能与线程相比拟差。2所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包以维持此连接,一般需要自己做在线维持。 短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,那么断开此TCP连接,一般银行都使用短连接。长连接多用于操作频繁,点对点的通讯,而且连接数不能太多情况,。每个TCP连接都需要三步握手,这需要时间,如果每个操作都是先连接,再操作的话那
3、么处理速度会降低很多,所以每个操作完后都不断开,次处理时直接发送数据包就OK了,不用建立TCP连接。而像WEB网站的 效劳一般都用短链接,因为长连接对于效劳端来说会消耗一定的资源,而像WEB网站这么频繁的成千上万甚至上亿客户端的连接用短连接会更省一些资源,如果用长连接,而且同时有成千上万的用户,如果每个用户都占用一个连接的话,那可想而知吧。所以并发量大,但每个用户无需频繁操作情况下需用短连好。3同步:调用方调用一个程序,等待返回,然后再继续下面的程序处理异步: 调用方调用一个程序,不等待返回,继续执行下面的程序。1)异步通信简单,双方时钟可允许一定误差。同步通信较复杂,双方时钟的允许误差较小。
4、2)通信效率:异步通信低,同步通信高。2请写出以下程序的运行结果,并解释导致这样运行结果的关键性原因。#include using std:cout;class Ppublic:virtual void print() cout P; ;class Q: public P public:virtual void print() cout Q;int main() P * p = new P;Q * q = static_cast (p);q-print(); delete p;cout print(); p-print(); cout print(); p-print(); cout P();
5、 delete q; return 0;PQQPP第二题 算法与程序设计题1给定如下的n*n的数字矩阵,每行从左到右是严格递增, 每列的数据也是严格递增1 2 33 5 64 8 9现在要求设计一个算法, 给定一个数k 判断出k是否在这个矩阵中。 描述算法并且给出时间复杂度不考虑载入矩阵的消耗算法思想: 沿着对角线查找,获得i,使得k位于aii与ai+1i+1之间。 k只可能存在于aii对应的右上角矩阵 和ai+1i+1对应的左下角矩阵。 使用递归法继续查找即可。时间复杂度 O(n)int searchK(int int_arr,int n,int startlow,int startclm,
6、int k)int lefttemp=0;int downtemp=0;int i=0;while(int_arrstartlow+istartclm+ik|in)i+;if (i=n)return 0;else if(arrii=k)reuturn 1;else return searchK(int_arr,n,startlow,startclm+i,k)+searchK(int_arr,n,startlow+i,startclm,k);2设 一个64位整型n,各个bit位是1的个数为a个. 比方7, 2进制就是 111, 所以a为3。现在给出m个数, 求各个a的值。要求代码实现。#incl
7、ude #includeusing namespace std;int count(long long v)int num=0;while(v)v &=(v-1);/执行效率为V中1的个数,时间复杂度比通过除操作、位操作比拟高出很多num+;return num;void main() vector arr; long long i; cout输入需要计算的数,Ctrl+z 停止 i) /输入随机个数的数,使用Ctrl+z 停止,之后回车键继续。arr.push_back(i); ; for(vector:size_type idx=0;idx!=arr.size();+idx) int n=count(arridx);coutnn; 第三题 系统设计题实现一个简化的搜索提示系统。给定一个包含了用户query的日志文件,对于输入的任意一个字符串s,输出以s为前缀的在日志中出现频率最高的前10条query。由于是分布式系统,假设至少有26台机器,每个机器存储以26个字母开头的query日志文件如机器1存的是a字母开头的,机器2存的是以b字母开头的每个机器上维护着一张哈希表,对于每条query, 在哈希表表中存放其地址哈希地址为链式的,并对其进行排序,按频率
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年江西省樟树市高二生物上册期末考试测试卷【典型题】附答案
- Multisim9电子技术基础仿真实验第三章九逻辑分析仪
- 某钢厂质量控制细则
- 某电子厂静电防护规范细则
- 水泥厂采购管理细则
- 第四章 电磁振荡与电磁波练习(练习含解析)高中物理 人教版(2026) 选择性必修 第二册
- 宏利开关厂成本控制准则
- 2027届四川省绵阳市八年级数学第一学期期末调研模拟试题含解析
- 2027届安徽省合肥市第四十五中学数学七上期末联考模拟试题含解析
- 安徽省养鹿中学2027届数学八上期末达标检测试题含解析
- IPC 7621 2025 中文版 电子组件低压注塑包封设计应用指南
- CSCO多发性骨髓瘤诊疗指南2026
- 江苏省安全员c2模拟试题及答案
- 海上风电基础施工作业指导书
- 工业香精生产企业配方保密管控细则
- 2025年AHA心肺复苏指南
- 2026年中国石油化工集团校园招聘面试题库
- 电梯的维保服务要求规范标准
- 电力系统消防培训
- 生产经营单位安全生产事故应急救援预案
- GB/T 46164-2025金属和合金的腐蚀增材制造钛合金电化学临界局部腐蚀温度(E-CLCT)的测量
评论
0/150
提交评论