5月23日 网络编程day6

news2025/1/18 6:45:56

 1.IO多路复用的原理?

答:将文件描述符放入一个集合中,当集合中有事件产生,移除其他文件描述符,执行剩下的文件描述符所对应的任务,往复循环。

2.实现IO多路复用可以使用哪些函数完成?

答:select、poll、epoll。

3.select和poll的区别?

答:①文件描述符数量:select支持文件描述符的数量为1024个;poll支持的文件描述符数量是无限制的。

        ②数据结构:select是读、写、异常文件描述符的集合;poll是将文件描述符放入一个结构体中。

        ③事件重置:select每次调用完之后需要重置在调用;poll不会修改结构体中的文件描述符,调用完后不需要重置。

        ④效率:select的效率较低,因为它每次调用都需要重新检查所有的文件描述符。poll的效率相对较高,因为它使用数组结构,且不需要在每次调用时重新设置。

4.在UDP通信过程中,是否使用connect函数?为什么?有什么好处?

答:可以使用,可以使俩个端点建立唯一通道,其通信时不会受到其他端点的影响。

5.OSI七层网络体系结构有哪些?

答:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。

6.四层网络体系结构?

答:以太网层、网络层、传输层、应用层

7.ARP、HTTP、TFTP、IP、UDP、TCP的全称和所在层?

答:ARP:地址解析协议:在以太网层;

        HTTP:超文本传输协议:在应用层;

        TFTP:简单文件传输协议:在应用层;

        IP:网际协议:在网络层;

        UDP:用户数据报协议:在传输层;

        TCP:传输控制协议:在传输层;

8.100.0.125.2对应默认的子网掩码是多少?

答:255.0.0.0。

9.顺序表和链表的区别?

答:①存储方式:顺序表是连续的存储空间;链表是不连续的内存块和指针组成。

       ②空间分配:顺序表创建时要预先分配固定的空间;链表可以动态的分配和释放节点。

       ③时间复杂度:顺序表插入删除时时间复杂度为O(n);链表插入删除时间复杂度为O(1)。

       ④访问地址和值:顺序表支持随机访问,时间复杂度为O(1);链表需要每个元素都遍历时间复杂度为O(n)

       ⑤内存利用:顺序表空间未被完全利用,可能会造成内存浪费。链表按需动态分配内存,可以更有效地利用内存空间。

       ⑥使用的场景:顺序表适用于频繁访问元素和随机访问的场景;链表适合频繁插入和删除元素的场景。

10.进程和线程的区别?

答: ①:进程是操作系统分配资源的最小单位,线程是进程最小的基本单位;

     ②:进程的资源空间是独立的,线程的资源空间是共享的整个进程;

     ③:进程相互独立,不会影响其他的进程,线程独立性低,可能会彼此影响;

    ④:进程间通信方式有管道、消息队列、共享内存、信号量等方式,线程通信为互斥锁条件变量、共享内存等方式;

    ⑤:进程适用于需要高独立性、隔离性和稳定性的场景,如服务器程序、后台服务。线程适用于需要高并发和共享资源的场景,如图形用户界面、Web服务器。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1682549.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习之体育运动项目姿态估计识别计数系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 在体育运动领域,对运动员的姿态进行准确估计和识别,以及对运动员数量进行精确…

苹果MacOS系统使用微软远程桌面连接Windows电脑桌面详细步骤

文章目录 前言1. 测试本地局域网内远程控制1.1 Windows打开远程桌面1.2 局域网远程控制windows 2. 测试Mac公网远程控制windows2.1 在windows电脑上安装cpolar2.2 Mac公网远程windows 3. 配置公网固定TCP地址 前言 日常工作生活中,有时候会涉及到不同设备不同操作系…

软件下载系统asp.net

本项目实现电子书下载网站的功能,实现文章、管理员分类,友情连接的管理以及对前台页面的静态化。网站前台实现对电子书的详细信息介绍和提供下载。 说明文档 运行前附加数据库.mdf(或sql生成数据库) 主要技术: 基于a…

2024 Google I/O - 提前窥探 Android 15 的新功能与适配

今年年初就简单介绍过 Android 15 预览版 的相关内容,而昨天 Google I/O 宣布了 Android 15 Beta2,作为第二个 Beta 版本 ,它已经基本接近它未来的样子,毕竟下个版本就是 Platform Stability 了,所以让我们提前来一睹 …

绿色智能:AI机器学习在环境保护中的深度应用与实践案例

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

IDEA如何对多线程进行debug

开发中使用到多线程的时候不少,但是debug起来还是比较困难的,因为默认每次只会进入一个线程,这样有些问题是发现不了的,其实IDEA也是支持进入每个线程来debug的 写一个简单的demo public class ThreadDebug {public static void main(String[] args) {MyThread myThread new…

04-Vue:ref获取页面节点--很简单

目录 前言在Vue中,通过 ref 属性获取DOM元素使用 ref 属性获取整个子组件(父组件调用子组件的方法) 前言 我们接着上一篇文章 03-02-Vue组件之间的传值 来讲。 下一篇文章 05-Vue路由 在Vue中,通过 ref 属性获取DOM元素 我们当然…

前端基础:1-2 面向对象 + Promise

面向对象 对象是什么?为什么要面向对象? 通过代码抽象,进而藐视某个种类物体的方式 特点:逻辑上迁移更加灵活、代码复用性更高、高度的模块化 对象的理解 对象是对于单个物体的简单抽象对象是容器,封装了属性 &am…

电商平台api接口:采购比价可用的比价工具推荐

电商平台api接口 目前,许多企业在进行内部采购时都有比价的需求。企业利用比价采购这一方式,能通过对比不同平台上、不同供应商的报价,进而选择最符合其需求和预算的产品或服务。 在比价采购的流程中,最重要的步骤就是企业在明确…

XXE(XML外部实体注入)

1、XXE原理 XXE(XML外部实体注入,XML External Entity) ,在应用程序解析XML输入时,当允许引用外部实体时,可构造恶意内容,导致读取任意文件、探测内网端口、攻击内网网站、发起DoS拒绝服务攻击、执行系统命…

马蹄集 oj赛(双周赛第二十七次)

目录 栈的min 外卖递送 奇偶序列 sort 五彩斑斓的世界 括号家族 名次并列 栈间 双端队列 合并货物 逆序对 活动分组 栈的min 难度:黄金巴 占用内存:128 M时间限制:1秒 小码哥又被安排任务了,这次他需要要设计一个堆栈,他除了可以满足正常的栈…

英语学习笔记22——Give me/him/her/us/them a .... Which one?

Give me/him/her/us/them a … Which one? 给我/他/她/我们/他们一个…… 哪一个? 词汇 Vocabulary empty a. 空的,啥也没有的    v. 倒空 例句:这个盒子是空的。    This box is empty.    这是个空盒子。    This is an emp…

顶顶通呼叫中心中间件-自动外呼输入分机号(比如隐私号)(mod_cti基于FreeSWITCH)

顶顶通呼叫中心中间件-自动外呼输入分机号(比如隐私号)(mod_cti基于FreeSWITCH) 比如有些人的号码是这样的就需要用上自动外呼输入分机号了 号码1:182XXXX8111-1234 号码2:182XXXX8222 如果号码是这样的就根据以下步骤配置 注意使用这个需要:…

深度学习模型keras第二十三讲:在KerasCV中使用SAM进行任何图像分割

1 SAM概念 ###1.1 SAM定义 Segment Anything Model(SAM)是一种基于深度学习的图像分割模型,其主要特点包括: 高质量的图像分割:SAM可以从输入提示(如点、框、文字等)生成高质量的对象掩模&am…

自动化测试在软件开发生命周期中如何提高代码质量?

自动化测试是一种在软件开发生命周期中使用软件工具来执行测试的方法,它可以大大提高代码质量,减少开发过程中的错误和缺陷。本文将从零开始,详细且规范地介绍如何使用自动化测试来提高代码质量。 第一步:明确测试目标 在开始自…

JMH301【亲测】5月最新整理【神鬼传奇】斗罗超变单机版175级新宠物宝宝坐骑丰富超变定制装备带完整GM命令网游单机虚拟机一键端

资源介绍: 是否需要虚拟机:是 文件大小:压缩包约8.6G 支持系统:win7、win10、win11 硬件需求:运行内存8G 4核及以上CPU 下载方式:百度网盘 内容持续更新! 资源截图: 下载地址…

58. UE5 RPG AI行为树的装饰器

书接56. UE5 RPG 给敌人添加AI实现跟随玩家,我们实现了AI一些基础设置,并实现了获取敌人附近的玩家实现了跟随功能 接下来,我们将实现区分职业,并根据职业不同设置不同的攻击距离,并且根据职业实现不同的技能施放。 …

使用 Android Jetpack 的 Room 部分将数据保存到本地数据库

处理大量结构化数据的应用可极大地受益于在本地保留这些数据。最常见的使用场景是缓存相关的数据,这样一来,当设备无法访问网络时,用户仍然可以在离线状态下浏览该内容。 Room 持久性库在 SQLite 上提供了一个抽象层,以便在充分利…

java中的HashSet类

一、HashSet类 实现了Set接口,无法存储重复元素 特点:元素位置无序、无索引、底层是HashMap 1、构造方法 内部是HashMap的构造方法 2、add方法 (1)元素在底层存储使用到了三种数据结构:hash数组、链表、树 (2)添加流程(根据…

安全生产月答题pk小程序怎么做

在当今信息化时代,小程序已成为人们日常生活和工作中不可或缺的一部分。特别是在安全生产领域,通过小程序进行答题PK活动,不仅可以提高员工的安全意识,还能促进团队间的协作与交流。本文将详细介绍如何制作一款安全生产月答题PK小…