自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Likes的博客

终日而思不如须臾之所学也

  • 博客(18)
  • 资源 (26)
  • 收藏
  • 关注

转载 模版的完全特化与偏特化

https://www.cnblogs.co模版特化:任何针对模版参数进一步进行条件限制设计的特化版本。 <<泛型思维>>完全特化:针对所有的模版参数进行特化。 <<c++ primer>>举例如下:template<class T,class N> class Template{}; 全特化:t...

2019-03-30 20:11:12 3310

转载 SQL三大范式

http://www.cnblogs.com/haofaner/archive/2011/12/20/2294461.html第一范式(1NF)(必须有主键,列不可分)数据库表中的任何字段都是单一属性的,不可再分create table aa(id int,NameAge varchar(100))insert aa values(1,''无限-女'')没有达到第一...

2019-03-29 15:32:22 2162

转载 深入解析条件变量

https://www.cnblogs.com/harlanc/p/8596211.html深入解析条件变量(condition variables)目录深入解析条件变量(condition variables)深入解析条件变量什么是条件变量(condition variables)一个例子关于上面例子的几个疑问为什么pthread_cond_wait需要加锁?...

2019-03-28 15:38:13 198

转载 单台服务器并发TCP连接数到底可以有多少

http://www.cnblogs.com/zhangkele/articles/8955051.html常识一:文件句柄限制在linux下编写网络服务器程序的朋友肯定都知道每一个tcp连接都要占一个文件描述符,一旦这个文件描述符使用完了,新的连接到来返回给我们的错误是“Socket/File:Can't open so many files”。这时你需要明白操作系统对可以打开的最大...

2019-03-21 21:09:44 2400

原创 read和write系统调用

read和write系统调用的使用是简单的,但实际上其封装了及其复杂的操作。因为Linux视一切的设备为文件,读写设备也被抽象成了读写文件。所以read和write系统调用下封装了复杂的对各种设备的读写操作。以read为例大体原理如下:read系统调用中,会根据用户传入的fd进行查表,发现相应的fd对应的到底是什么设备,再进入相应设备专有的read逻辑。比如fd是open file返回的磁...

2019-03-18 11:38:50 833

原创 怎样运用pipe更为便捷地实现线程池

先讨论一下pipe的原子性问题,具体而言就是多个写线程写一个pipe,同时多个读线程读这个piperead pipe只要pipe中有数据,read就不会阻塞,不会阻塞就不会在读的中途被换出,也就能确保原子性。要达到上述目的,一个简单的做法就是write的数据量是read的数据量的倍数或相同。这样read就不会在读到一半的数据时被阻塞。write pipe只要pipe中未满,writ...

2019-03-18 11:31:40 385

原创 read和write线程的调度以及其原子性的思考

常有文章说系统调用都具有原子性,这是有待商榷的。一个read操作读取一个fd,在读取部分数据后,fd暂时没有数据,read会被阻塞,CPU自然会将其换出,调度其他进程进行操作。而很可能换入的进程也对同一个fd进行操作,这就导致了最开始的read读取的不是连续的数据。所以read的原子性在这种情况下是不能被保证的。...

2019-03-18 11:18:33 657

原创 常见问题汇总

redis套接字高并发搜素二叉树变有序链表细过剑指offer锁存哪cdn(Content Delivery Network,即内容分发网络)用了什么锁线程的几种状态单例设计模式及其实现,单例的几种写法http了解,1.0和2.0,状态码mySQL怎样扛高并发 通过Redis来提供缓存机制,通过中间件来提...

2019-03-18 09:52:26 168

原创 牛客选择题笔记

阅读C++语言代码输出()int main(){ int arr[]={1,2,3,4,5,6,7}; int *p=arr; *(p++)+=89; printf("%d,%d\n",*p,*(++p)); return 0;}第4行: *p=arr[0]第5行:arr[0]=90;p自加1,此时*p=arr[1];第6行:先计算*(+...

2019-03-17 10:12:46 576

转载 C++的static和const总结

https://www.cnblogs.com/phpzhou/p/6390869.html

2019-03-13 14:07:47 234

原创 Linux命令find与grep

https://www.cnblogs.com/zhangmo/p/3571735.html递归查找某个目录下相应的文件名:#在根目录下查找所有名字带有hosts的文件find / -name *hosts*在一个特定文件中找特定的字符cat CMakeLists.txt |grep CXX在一个文件夹下递归查找特定字符grep -r CXX...

2019-03-13 11:52:59 195

原创 netstat、tcpdump和gdb命令的配合使用debug多线程网络程序

不熟练某个命令时记得使用man查找手册一、netstatnetstat命令会截取执行命令那一瞬间的网络状态在调试网络bug时一般最先使用netstat查看网络状态,主要关注TCP状态是否正确,接收和发送区是否有大量数据堆积。-t(tcp)显示tcp相关的网络信息-p(process) 显示占用相应端口的程序名字以及进程号PID-a(all) 显示所有状态的端口包括list...

2019-03-11 16:48:38 471

原创 获取多行由空格隔开的输入

主要使用sstream,getline,get进行配合#include &lt;iostream&gt;#include &lt;string&gt;#include &lt;vector&gt;#include &lt;sstream&gt;using namespace std;int main(){ vector&lt;int&gt; input_helper; int...

2019-03-11 15:09:44 314

原创 通过Jump Game 展示动态规划的思维过程 LeetCode 55. Jump Game

https://leetcode.com/problems/jump-game/方法一:递归(回溯、DFS) 超时在递归树的叶子节点判断,如果能够达到将成员变量置为trueclass Solution {public: bool result; void fun(vector&lt;int&gt;&amp; nums, int start) { if (start&gt;...

2019-03-09 20:17:03 219

转载 使用Floyd算法图求直径

https://www.cnblogs.com/Ran-Chen/p/9219716.html

2019-03-08 21:40:58 1607

原创 头条上机算法题(最大点问题)

P为给定的二维平面整数点集。定义 P 中某点x,如果x满足 P 中任意点都不在 x 的右上方区域内(横纵坐标都大于x),则称其为“最大的”。求出所有“最大的”点的集合。(所有点的横坐标和纵坐标都不重复, 坐标轴范围在[0, 1e9) 内)如下图:实心点为满足条件的点的集合。请实现代码找到集合 P 中的所有 ”最大“ 点的集合并输出。思路:对于所有的点先按照y从大到小排序O(N...

2019-03-05 09:29:20 873

原创 使用ios::sync_with_stdio(false) 来提高输入输出性能

cin和cout用起来很方便,但是性能不及scanf和printf,我们可以使用std::ios::sync_with_stdio(false);来提升cin和cout的性能与sanf和printf相当

2019-03-05 09:16:13 499

转载 Linux系统修改PATH环境变量方法

Linux系统修改PATH环境变量方法在Linux安装一些软件通常要添加路径环境变量PATH.PATH环境变量通俗的讲就是把程序的路径"备案"到系统中,这样执行这些程序时就不需要输入完整路径,直接在bash输入程序名就可以执行.比如常用的ls命令就是添加好了环境变量才可以直接执行ls0查看PATH环境变量终端输入echo $PATH返回如下,各路径用:隔开.$符号用于展开变量的值....

2019-03-01 11:36:53 1750

同步队列-无锁队列-循环数组无锁队列.zip

配套代码讲解:https://blog.csdn.net/songchuwang1868/article/details/90200251 配套代码讲解:https://blog.csdn.net/songchuwang1868/article/details/90200251 配套代码讲解:https://blog.csdn.net/songchuwang1868/article/details/90200251 同步队列-无锁队列-循环数组无锁队列 同步队列-无锁队列-循环数组无锁队列 同步队列-无锁队列-循环数组无锁队列

2019-05-14

VisualGDB-5.3.r7(破解版)支持VS2017

VisualGDB-5.3.r7(破解版)支持VS2017

2018-12-21

virtualGDB(VS2017)

virtualGDB在VirtualStudio2017远程调试Linux代码

2018-11-23

分布式系统概念与设计 原书第5版

分布式系统概念与设计 原书第5版

2018-10-17

分布式join算子设计

分布式join原理与设计

2018-10-16

大规模分布式存储系统:原理解析与架构实战.杨传辉

大规模分布式存储系统:原理解析与架构实战.杨传辉高清pdf

2018-09-23

左手程序右手诗(上下两册)

左手程序右手诗(上下两册)侯捷的程序人生 左手程序右手诗(上下两册)侯捷的程序人生 左手程序右手诗(上下两册)侯捷的程序人生

2018-08-09

左手程序右手诗

左手程序右手诗侯捷的程序人生 左手程序右手诗侯捷的程序人生 左手程序右手诗侯捷的程序人生

2018-08-09

protobuf快速下载

protobuf快速下载 protobuf快速下载 protobuf快速下载 protobuf快速下载

2018-08-07

protobuf编译安装快速下载

protobuf编译安装快速下载 protobuf编译安装快速下载 protobuf编译安装快速下载

2018-08-07

SQL必知必会PostgresSQL数据导入脚本

SQL必知必会PostgresSQL数据导入脚本 SQL必知必会PostgresSQL数据导入脚本 SQL必知必会PostgresSQL数据导入脚本

2018-08-06

STL源码(sgi、llvm、g++)

STL源码(sgi、llvm、g++) STL源码(sgi、llvm、g++) STL源码(sgi、llvm、g++)

2018-08-02

数据库查询优化器的艺术高清PDF

数据库查询优化器的艺术高清PDF 数据库查询优化器的艺术高清PDF 数据库查询优化器的艺术高清PDF

2018-08-02

Virtual Assist 破解版(支持VS2017)超好用的插件

Virtual Assist 破解版(支持VS2017)超好用的插件 Virtual Assist 破解版(支持VS2017)超好用的插件

2018-07-29

深入理解linux内核中文第三版高清pdf

深入理解linux内核中文第三版高清pdf 深入理解linux内核中文第三版高清pdf 深入理解linux内核中文第三版高清pdf

2018-07-29

编程修养高清pdf

编程修养高清pdf 编程修养高清pdf 编程修养高清pdf 编程修养高清pdf

2018-07-29

STL源码剖析简体中文版高清pdf

STL源码剖析简体中文版高清pdf STL源码剖析简体中文版高清pdf STL源码剖析简体中文版高清pdf

2018-07-29

Linux设备驱动程序(中文版第三版)高清pdf

Linux设备驱动程序(中文版第三版)高清pdf Linux设备驱动程序(中文版第三版)高清pdf Linux设备驱动程序(中文版第三版)高清pdf

2018-07-29

Linux多线程服务端编程:使用muduo C++网络库

Linux多线程服务端编程:使用muduo C++网络库 Linux多线程服务端编程:使用muduo C++网络库 Linux多线程服务端编程:使用muduo C++网络库

2018-07-29

Effective Modern C++

Effective Modern C++ Effective Modern C++ Effective Modern C++ Effective Modern C++

2018-07-29

代码_老码识途-从机器码到框架的系统观逆向修炼之路

代码_老码识途-从机器码到框架的系统观逆向修炼之路 代码_老码识途-从机器码到框架的系统观逆向修炼之路 代码_老码识途-从机器码到框架的系统观逆向修炼之路 代码_老码识途-从机器码到框架的系统观逆向修炼之路

2018-07-29

C++编程思想(卷一+卷二)高清带目录

C++编程思想(卷一+卷二)高清带目录 C++编程思想(卷一+卷二)高清带目录 C++编程思想(卷一+卷二)高清带目录 C++编程思想(卷一+卷二)高清带目录 C++编程思想(卷一+卷二)高清带目录

2018-07-29

电子科技大学图论考试试卷

电子科技大学图论考试试卷 电子科技大学图论考试试卷 电子科技大学图论考试试卷 电子科技大学图论考试试卷

2018-07-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除