OUC_LiuX's Blog

为天地立心,为生民立命。
为往圣继绝学,为万世开太平。
虽未能至,心向往之。

Python 与 Linux/C++ 进行 SOCKET 通信的注意事项

redis

python 做客户端容易在 C++ 服务端产生客户端滞留现象,也即,虽然你发送完数据立刻 close 了socket 套接字,但是服务端依然疯狂的在读取缓存区,虽然什么都读不到。 为应对 1 所述现象,实测 close 之前先 sleep(1) 休眠一秒是可以的。 1 所属现象产生的原因也有可能是字符串未对齐所导致,这是由于 Linux/c++ 端会按照4个字节为一...

redis 常见问题合集

redis


MySQL常见问题合集

MySQL


计算机网络常见问题合集

计算机网络

计算机网络三种模型 OSI七层网络模型 是国际标准化组织 ISO 给出的标准参考模型。OSI标准模型将计算机网络从下到上划分为七层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 TCP/IP四层模型是实际生产中使用的模型,是事实上的国际标准。TCP/IP 四层模型将计算机网络从下到上划分为 网络接口层、网络层、传输层和应用层。 TCP/IP 五层模型是...

C++常见问题合集

C++

基础篇 C 和 C++ 有什么区别 使用中比较直观的区别: c++ 使用 new/delete 运算符 取代 c 中的 malloc/free 库函数。 new 的作用一是分配内存,二是调用类的构造函数;delete 同样除了释放内存外还负责调用类的析构函数。而 malloc/free 则只是分配和释放内存。于是无法使用 malloc 实例化一个对象。 ...

Series Article of cpp -- 31

C++11 中的 lambda 表达式

lambda 表达 c++ 中的可调用对象之一,在 C++11 中被引入到标准库中,使用时不需要包含任何头文件,但是编译时需要指定 -std=c++11 或其他支持 c++11 标准的编译命令(比如 -std=c++0x 或 -std=c++14 或 -std=c++1y )。lambda 表达式源于函数式编程的概念,简单来说它是一个匿名函数。它最大的作用就是不需要额外再写一个函数或者函数对...

Series Article of UbuntuOS -- 31

根目录忽然空间不足问题解决记录

问题已解决,出在系统日志上。现在简单复盘记录一下发现和处理流程。 先 df -h 查看一下那个分区占用大,果不其然是 根目录,则进入到根目录执行 sudo du -h --max-depth=1 ,发现 ./var 占用了超大空间。进入,继续 sudo du -h --max-depth=1 ,发现 ./log 占用了超大空间。进入,执行 sudo du -sh * | grep...

操作系统常见问题合集

操作系统

Backtrace 是怎么产生的 backtrace 的实现依赖于栈指针(fp寄存器),FP寄存器保存的是上一个函数的栈底,然后一层层出栈即可得到函数调用过程。在gcc编译过程中任何非零的优化等级(-On参数)或加入了栈指针优化参数 -fomit-frame-pointer 后多将不能正确得到程序栈信息。 CAS 是什么东西 CAS(Compare And Swap) 是一种无锁实现原子性...

Code Top -- 16 滑动窗口最大值

单调队列几乎唯一的应用场景

from CodeTop, Leetcode, 239. 滑动窗口最大值。 单调队列,使队列内部单调递减,队列头就是窗口最大元素。 题意: 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回 滑动窗口中的最大值 。...

Code Top -- 15 复原 IP 地址

DFS 暴搜,注意条件

from CodeTop, Leetcode, 93. 复原IP地址。 深度优先暴力搜索,和全排列相似的思路 题意: 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 ‘.’ 分隔。 例如:”0.1.2.201” 和 “192.168.1.1” 是 有...