I/O 多路复用机制
9月 4, 2022
面试问的太多了,还是专门整理一下吧,理清知识结构。 总览 # 首先需要注意的是,下面讨论的几种 I/O 模型都属于同步(synchronous) I/O 操作,至于异步(asynchronous) I/O 操作,以后再说。 阻塞式 I/O(Blocking I/O) # 传统的 I/O 模型都是单个进程每次只在一个文件描述符上执行 I/O 操作,每次 I/O 系统调用都会阻塞直到完成数据传输,阻塞 … ...
面试问的太多了,还是专门整理一下吧,理清知识结构。 总览 # 首先需要注意的是,下面讨论的几种 I/O 模型都属于同步(synchronous) I/O 操作,至于异步(asynchronous) I/O 操作,以后再说。 阻塞式 I/O(Blocking I/O) # 传统的 I/O 模型都是单个进程每次只在一个文件描述符上执行 I/O 操作,每次 I/O 系统调用都会阻塞直到完成数据传输,阻塞 … ...
最近面试中发现我比较薄弱的地方还是在 Redis,很多数据结构对应的底层的原理不知道,于是来看看相关资料和源码,工作中没有这么深入研究过,惭愧了。 String # 使用方法 # 127.0.0.1:6379> set key value OK 127.0.0.1:6379> set number 10086 OK 127.0.0.1:6379> set title … ...
越来越觉得,与其说 CSS 是编程语言,不如说它是配置文件。CSS (Cascading Style Sheets,层叠样式表)的诞生是为了图文信息展示服务的。CSS 布局机制通常就是指对 display 属性的设置,Display - MDN 文档指明 display 属性可以用来指示六种维度的值,下面就看看 display 设置了不同的值到底意味着什么。 盒子模型 # 先认识下通常说的盒子模 … ...
简单选择器 # 标签选择器 # 标签选择器也叫元素选择器 /*标签选择器*/ tag {background-color: gold;} ID 选择器 # /*ID 选择器*/ #someID {background-color: gold;} 类选择器 # /*类选择器*/ .someClass {background-color: gold;} 组合使用 # 还有一种选择器也比较常见, … ...
五月到六月,由于疫情原因,被迫居家隔离了一个月,在家也特别无聊,就下了几个可以和外国人线上对话的 App(Cambly、Preply,需付费)打算练练英语口语,于是开启了一段非常有意思的与老外聊天的经历。 几乎每天都和一位讲英语的外国人通过视频的方式对话半小时,有的时候是课程,有的时候就是闲聊。这里面有英国、印度、南非、菲律宾、加拿大、美国、澳大利亚等等很多讲英语国家的人,年轻人、中老年人都有。 … ...
这个问题既熟悉又有点陌生,先看概念。AJAX 是 Asynchronous Javavascript XML 的缩写,即异步 JavaScript 和 XML。使用 AJAX 技术可以在无需重新加载整个网页的情况下,能够更新部分网页,从而给带来更好的用户体验。另外 AJAX 不仅使用 XML,实际上由于 JSON 结构的易读和轻量反而更受欢迎。 AJAX 不是一种单一的技术,而是利用了一系列相关的 … ...
事件是在编程时系统内发生的动作或者发生的事情,系统响应事件后,如果需要,我们可以用事件处理器(event handler)对事件做出回应。浏览器中常见的可以触发事件的时机比如有: 用户在某个元素上点击鼠标或悬停光标时。 用户在键盘中按下某个按键时。 用户调整浏览器的大小或者关闭浏览器窗口时。 一个网页停止加载时。 提交表单时。 播放、暂停、关闭视频时。 发生错误时。 事件处理程序 # 事件处理程 … ...
与一般基于类的面向对象语言(C++、Java)不同,JavaScript 是基于原型的语言。 原型 [[Prototype]] # 打开浏览器的控制台,输入 let b = {"hello": "world"} ,然后查看 b ,你会发现一个 [[Prototype]] 属性。这是每个对象都有的隐藏属性,它要么为 null,要么是对另一个对象的引用,那个对象 … ...
WebSocket 是 HTML5 开始提供的一种网络传输协议,可以在单个 TCP 连接上进行全双工通信,位于 OSI 参考模型的应用层。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。 在 WebSocket 协议出现之前 … ...
因为 TCP/IP 协议中每个协议都是层层包装、依赖,分开说可能并不会更容易掌握这些理论知识,所以这里把这些协议都放在了一起。 名词解释 # 七层和四层模型 # 这里有一张图比较详细。 OSI 七层参考模型包括: 应用层:应用程序可直接使用的协议,如 HTTP、FTP。 表示层:主要是数据格式转化,比如压缩、加密。 会话层:定义了如何建立及开始会话,比如 TLS。 传输层:接受上一层的数据,并将其 … ...