玩命加载中 . . .

学习之旅
2-事务 2-事务
MySQL事务特性 原子性(Atomicity):一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(rollback)到事务开始前的状态,就像这个事务从
2022-03-25
1-索引 1-索引
索引的出现就是为了提高查询的效率,就像书的目录一样 查询主要有2种方式: 全表扫描 根据索引检索 查看是否使用了索引:在SQL语句前添加explain关键字 type=ALL,表示使用全表查询 tyep=RES,表示使用索引 创
2022-03-25
2.1-进程基础知识 2.1-进程基础知识
进程基础知识1、进程的概念我们编译的可执行文件只是储存在硬盘的静态文件,运行时被加载到内存,CPU执行内存中指令,这个运行的程序被称为进程 进程是对运行时程序的封装,是操作系统进行资源调度和分配的基本单位 2、进程的实现 为了实现进程模
2022-03-22
4.3-多进程/线程实现并发服务器 4.3-多进程/线程实现并发服务器
客户端// TCP通信的客户端 #include <stdio.h> #include <arpa/inet.h> #include <unistd.h> #include <string.h> #include &
2022-03-17
5.1-阻塞与非阻塞 5.1-阻塞与非阻塞
一个典型的网络IO接口调用,分为两个阶段,分别是“数据就绪”和“数据读写”,数据就绪阶段分为阻塞和非阻塞,表现的结果就是,阻塞当前线程还是直接返回 同步表示A向B请求调用一个网络IO接口时,数据的读写都是由请求方自己来完成的(不管是阻塞
2022-03-16
4.5-UDP和本地Socket 4.5-UDP和本地Socket
UDP通信#include <sys/types.h> #include <sys/socket.h> ssize_t sendto(int sockfd, const void *buf, size_t len, int f
2022-03-16
4.4-IO多路复用 4.4-IO多路复用
IO多路复用IO多路复用使得程序能同时监听多个文件描述符,能够提高程序的性能,Linux下实现IO多路复用的系统调用主要有select、poll和epoll BIO阻塞模型 缺点: 线程或进程会消耗资源 线程或进程调度消耗CPU资源
2022-03-16
4.2-TCP 4.2-TCP
TCP通信流程套接字函数#include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> // 包含了前2个 >>>>>>>>>>>>>>>>>
2022-03-16
4.1-Socket 4.1-Socket
字节序转换函数#include <arpa/inet.h> // 转换端口 uint16_t htons(uint16_t hostshort); // 主机字节序->网络字节序 uint16_t ntohs(uint16_t net
2022-03-16
33-二叉搜索树的后序遍历序列 33-二叉搜索树的后序遍历序列
剑指 Offer 33. 二叉搜索树的后序遍历序列输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互不相同。 参考以下这颗二叉搜索树: 5
2022-03-16
26-树的子结构 26-树的子结构
剑指 Offer 26. 树的子结构输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构) B是A的子结构, 即 A中有出现和B相同的结构和节点值。 例如:给定的树 A: 3 / \ 4
2022-03-16
3.2-线程同步 3.2-线程同步
生产者消费者模型 生产者生成数据之后,放入缓冲区 消费者从缓冲区取出数据 任何时刻,只能有一个生产者或消费者可以访问缓冲区 分析得出: 任何时刻只能有一个线程操作缓冲区,说明需要互斥 缓冲区为空时,消费者需要等待生产者生成数据;缓冲区满
2022-03-15
13 / 43