Linux 高性能服务器编程:I/O复用一 2
概述 I/O复用使得程序能同时监听多个文件描述符,这对提高程序的性能很重要。 通常,网络程序在下列情况下需要使用I/O复用技术: 客户端程序要同时处理多个socket。 客户端程序要同时处理用户输入和网络连接。 TCP服务器要同时处理监听socket和连接socket。 服务器要...
概述 I/O复用使得程序能同时监听多个文件描述符,这对提高程序的性能很重要。 通常,网络程序在下列情况下需要使用I/O复用技术: 客户端程序要同时处理多个socket。 客户端程序要同时处理用户输入和网络连接。 TCP服务器要同时处理监听socket和连接socket。 服务器要...
概述 编译阶段 编译阶段是整个编译流水线中最复杂、最核心的阶段——它是编译器的"大脑" 定义 编译阶段把预处理后的 C/C++ 源码(纯文本)翻译成汇编语言(或 LLVM IR) 这个阶段要完成"理解高级语言的含义,并用低级语言表达出来"这...
设置dump捕获 捕获dump 运行目标程序 产生dump 转储dump lldb调试dump 用lldb调试dump 运行程序 查看堆栈 寄存器 汇编 lldb调试正常程序 加载程序 在main函数打断点 运行程序 LLDB命令 list 显示代码 frame variable...
睡眠函数 函数sleep让进程睡眠seconds秒,函数usleep让进程睡眠usec微秒。 sleep睡眠函数内部是用信号机制进行处理的 用到的函数有 示例 时钟处理 Linux为每个进程维护3个计时器,分别是真实计时器、虚拟计时器和实用计时器。 真实计时器计算的是程序运行的实...
TCP的建立和关闭 复位报文段 在某些特殊的情况,TCP连接的一端会向另一端发送携带RST标志的报文段,即复位报文段,以通知对方关闭连接或重新建立连接。 收到复位报文段的一端应该关闭连接或重新连接,而不能回应这个复位报文段。 异常终止连接 TCP提供了异常终止一个连接的方法,即给...
TCP/IP协议族 TCP/IP是一个四层协议系统,自底而上分别是数据链路层、网络层、传输层和应用层。 数据链路层 实现了网卡接口的网络驱动程序,以处理数据在物理媒介上的传输。 常用协议 ARP RARP 网络层使用IP地址寻址一台机器,而数据链路层使用物理地址寻址一台机器,因此...
TCP特点 面向连接 字节流 可靠传输 关于TCP 使用TCP通信的双方必须先建立连接,然后才能开始数据的读写。 双方都必须为该连接分配必要的内核资源,以管理连接的状态和连接上数据的传输。 TCP连接是全双工的,双方的数据读写可以通过一个连接进行。完成数据交换之后,通信双方都必须...
内置变量及含义 BASH bash的完整路径 BASH_ENV bash非互动模式下,每次在执行shell脚本时会先检查BASH_ENV是否有指定文件,如果有先执行指定文件 BASH_VERSION bash的版本 CDPATH cd命令的搜索路径 cd file #如果当前路径...
cef结构简介 CMakeLists.txt Debug cef的debug构建,以及平台需要的其他库 include cef头文件 libcef_dll libcef_dll静态库的源代码, 用到cef的C++API的,都必须链接这个库 Release cef的release构...
概述 预处理阶段的本质 对源码做文本级别的变换,把编译器不认识的预处理指令(#开头的东西)全部处理掉,输出一个纯粹的、编译器可以直接解析的 C/C++ 代码文件 宏替换是其中最核心的操作,但 #include 展开和条件编译同样重要——实际项目中,#include 展开带来的代码...
搜索当前标签