首页
学习
活动
专区
工具
TVP
发布

C++/Linux

专栏作者
210
文章
17725
阅读量
28
订阅数
【计算机网络】epoll
首先 epoll_create() 这个接口就是帮我们创建一个 epoll 模型,这个模型是什么我们后面介绍原理的时候再讲。
YoungMLet
2024-04-09
440
【计算机网络】select/poll
多路转接属于 IO 复用方式的一种。系统提供 select() 函数来实现多路复用输入/输出模型。select 系统调用是用来让我们的程序监视多个文件描述符的状态变化的。程序会停在 select 这里等待,直到被监视的文件描述符有一个或多个发生了状态改变。
YoungMLet
2024-04-09
580
【计算机网络】高级IO模型
当我们调用系统接口 write、read 的时候,本质是把数据从用户层写给操作系统,也就是写入到 OS 的发送缓冲区中,或者从 OS 的接收缓冲区中读取数据,所以它们的本质也就是拷贝函数。
YoungMLet
2024-03-30
530
【计算机网络】数据链路层
假设我们要将数据从主机A推送到主机B,根据我们之前的理解,是可以通过网络层进行路由的,这就是网络层在做决策,所以在网络层就要先决策该报文是要转发给和我处于同一网段的其它主机,还是交到下一跳,决策了之后再把报文向下交付,最后把报文交到路由器中。
YoungMLet
2024-03-30
1050
【计算机网络】IP 协议
首先我们学的 IP 地址是在网络协议栈中的网络层的,数据包经过 TCP/UDP 传输层封装报头后,传给下层网络层,而网络层主要是在复杂的网络环境中确定一个合适的路径发送给对方。
YoungMLet
2024-03-23
620
【计算机网络】UDP/TCP 协议
端口号(Port)标识了一个主机上进行通信的不同的应用程序。在 TCP/IP 协议中, 用 “源IP”, “源端口号”, “目的IP”, “目的端口号”, “协议号” 这样一个五元组来标识一个通信(可以通过netstat -n查看)。
YoungMLet
2024-03-16
590
【数据结构】并查集
在一些应用问题中,需要将 n 个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元素集合,然后按一定的规律将归于同一组元素的集合合并。在此过程中要反复用到查询某一个元素归属于那个集合的运算。适合于描述这类问题的抽象数据类型称为并查集(union-find set)。
YoungMLet
2024-03-09
500
【计算机网络】HTTPS 协议原理
HTTP 协议内容都是按照文本的方式明文传输的,这就导致在传输过程中出现一些被篡改的情况。HTTPS 也是一个应用层协议,是在 HTTP 协议的基础上引入了一个加密层。
YoungMLet
2024-03-09
1020
【计算机网络】HTTP协议
虽然我们说,应用层协议是我们自己定的,但实际上,已经有大佬们定义了一些现成的,又非常好用的应用层协议,供我们直接参考使用。HTTP(超文本传输协议) 就是其中之一。
YoungMLet
2024-03-03
1010
【计算机网络】应用层自定义协议
我们上个知识点编写的TCP中,TCP是面向字节流的,我们怎么保证读取上来的数据是一个完整的报文呢?其实我们写的代码中不能保证这个问题,所以代码是有BUG的。TCP 叫做传输控制协议,也就是什么时候发送给对方,发多少,出错了怎么办,完全是由发送方的 TCP 协议来定!当我们使用 write() 函数向 sockfd 中写入数据时,数据不一定已经发给对方了,它的作用其实就是用户到内核的拷贝!这跟我们以前学的向文件中写入是一样的,我们将数据通过 fd 写入到内核的缓冲区,通过操作系统向磁盘中刷新缓冲区的内容。所以真正决定网路收发的协议是由 TCP 决定的!
YoungMLet
2024-03-01
1000
【计算机网络】socket 网络套接字
实际上我们两台机器在进行通信时,是应用层在进行通信,应用层必定会推动下层和对方的上层进行通信。
YoungMLet
2024-03-01
950
【计算机网络】网络基础
计算机数量更多了,通过交换机和路由器连接在一起。如下图,路由器的左右侧都是一个局域网,两个局域网用路由器连接起来,构成局域网LAN;在局域网内部,对应的主机用交换机可以互相转化消息;跨局域网经过路由器+交换机进行数据转化。数据经过交换机发现不是本网络的,直接交给路由器,路由器再在对应的子网当中,找到对应的主机。
YoungMLet
2024-03-01
1170
【MySQL】MySQL库
要使用C语言连接 mysql,需要使用 mysql 官网提供的库,大家可以去官网下载。
YoungMLet
2024-03-01
900
【MySQL】事务
当客户端A检查还有一张票时,将票卖掉,还没有执行更新数据库的时候,客户端B检查了票数,发现大于0,于是又买了一次票。然后客户端A将票数更新回数据库。于是就出现了同一张票被卖了两次的情况。
YoungMLet
2024-03-01
650
【MySQL】索引
索引:提高数据库的性能,索引是物美价廉的东西了。不用加内存,不用改程序,不用调 sql,只要执行正确的 create index ,查询速度就可能提高成百上千倍。但是天下没有免费的午餐,查询速度的提高是以插入、更新、删除的速度为代价的,这些写操作,增加了大量的IO。所以它的价值,在于提高一个海量数据的检索速度,即查找数据的速度。
YoungMLet
2024-03-01
1010
【MySQL】表的内外连接和视图
内连接实际上就是利用 where 子句对两种表形成的笛卡尔积进行筛选,我们前面学习的查询都是内连接,也是在开发过程中使用的最多的连接查询。
YoungMLet
2024-03-01
1010
【MySQL】复合查询
查询工资高于 500 或岗位为 MANAGER 的雇员,同时还要满足他们的姓名首字母为大写的 J
YoungMLet
2024-03-01
990
【MySQL】内置函数
如上图,只要 sendtime + 2 min 的时间比现在的时间大即是 2 min 内发布的贴子,所以对应的 SQL 语句为:
YoungMLet
2024-03-01
1050
【MySQL】表的基本查询
表的增删查改,简称表的 CURD 操作 : Create(创建),Update(更新),Retrieve(读取),Delete(删除).
YoungMLet
2024-03-01
600
【MySQL】表的约束
表的约束:表中一定要有各种约束,通过约束,让我们未来插入数据库表中的数据是符合预期的。约束本质是通过技术手段,倒逼用户,插入正确的数据。反过来,在 mysql 角度,凡是插入进来的数据,都是符合数据约束的!约束的最终目的就是保证数据的完整性和可预期性。因此我们需要更多的约束条件!
YoungMLet
2024-03-01
890
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档