自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 数据库索引相关知识

https://zhuanlan.zhihu.com/p/58269930

2021-01-26 16:15:47 108

原创 tcp协议关闭连接时,为什么发起方一定要有time_wait阶段?

https://draveness.me/whys-the-design-tcp-time-wait/

2021-01-26 14:42:00 122

原创 SCP命令的使用

scp命令指定端口: scp -P 端口号 源文件地址 目标文件地址注:写带ip或域名的文件地址时,ip地址和目录路径一定记得用 ":" 隔开 !!!

2020-11-25 18:49:55 488

原创 网络IO复用模型,epoll的优点

select、poll和epoll中,epoll 的优点主要是一下几个方面:监视的描述符数量不受限制,它所支持的 fd 上限是最大可以打开文件的数目,这个数字一般远大于 2048, 举个例子, 在 1GB 内存的机器上大约是 10 万左右,具体数目可以 cat /proc/sys/fs/file-max 察看, 一般来说这个数目和系统内存关系很大。select 的最大缺点就是进程打开的 fd 是有数量限制的。这对于连接数量比较大的服务器来说根本不能满足。虽然也可以选择多进程的解决方案( Apache 就

2020-11-25 10:45:22 632

原创 网络编程-——socket套接字简单例子

https://blog.csdn.net/qq_19550513/article/details/54965653

2020-02-27 18:26:12 137

原创 构建堆、插入堆、删除堆、推排序图解——易懂!

参考:https://blog.csdn.net/u011068702/article/details/52712634

2020-02-22 13:21:31 259

原创 关于动态规划和贪心算法的具体例子

https://www.nowcoder.com/profile/868514962/codeBookDetail?submissionId=61612794

2020-02-21 21:12:10 322

原创 求 最大 连续子序列和?动态规划经典算法!

首先,题目要求求出连续子序列的和的值为最大的子序列,有点绕口,多读几遍就清楚了。一个序列有大量的连续子序列(排列组合问题了),要从众多子序列中挑出和的值为最大的那个序列。暴力解决的思路很简单,直接遍历所有的连续子序列并求它们的和,分别对比和的大小,取最大的值即可,时间复杂度为n^2。但是,算法之所以简单,在于它的高效性。换个思路:我们其实并不需要求出每个连续子序列的和。有一个既定事实,那就是每...

2019-09-20 10:22:14 420

原创 拍摄快照和备份的区别!

拍摄快照是记录文件逻辑地址和物理地址之间的关系,数据块会被锁定不可删除;备份是数据块的拷贝。参考链接:https://www.zhihu.com/question/20374919

2019-09-16 11:22:01 343

转载 各种排序算法时间复杂度总结

https://blog.csdn.net/weiwenhp/article/details/8622728

2019-05-19 18:44:14 6629

原创 Linux下解压bzip2文件遇到错误!

网上说解压该格式的文件命令如下: tar -jxvf **.bz2尝试运行但是报错,信息如下: bzip2: Compressed file ends unexpectedly; perhaps it is corrupted? *Possible* reason follow各种网上找原因,没有成功的解决方案,貌似说是bzip2命令的...

2019-04-11 20:22:09 8837

原创 发生内存泄露,如何调试?

一般来讲,程序运行错误,我们都会用gdb进行调试,查看程序报错中断时的栈帧信息,并根据信息对程序修改完善。然而,如果程序是因为发生内存泄露而终止时,栈帧的信息很可能是“不靠谱”的,这时可以借助定位程序内存泄露的工具(如valgrind)去发现错误点,并加以改正。原因: 程序的内存空间分为堆、栈、全局区(静态区)、字符串常量区、代码区,而我的程序又是多线程的程序,极有可...

2019-04-11 20:12:27 748

原创 工程项目debug调试方法与心得!

开发测试过程中,最恐怖的错误不是编译错误,而是运行时的错误,更恐怖的当属逻辑错误了(所谓逻辑错误指的是开发人员开发过程中没有把问题看得足够透彻,所以逻辑上会有一些出入)。而不幸的是,自己检查自己编写的代码实很难发现错误的,因为每个人的思维都有特定的“轨迹”,每次检查我们都会按照固有的逻辑去检查我们编写的具有逻辑错误的代码,所以很难很难发现错误。所以应使用以下方法进行开发测试:1. 按模块开发与...

2019-03-07 23:31:20 860

原创 关于静态局部变量、静态全局变量、静态函数和静态存储的相关知识!

静态局部变量:存放在静态区(全局区),程序开始到结束一直存在,作用范围在所声明定义的函数体内;静态全局变量:区别于全局变量,全局变量默认的修饰符是“extern”,作用范围是整个程序的源代码文件,而静态全局变量只作用于所定义的源文件内;相同点是静态全局变量和全局变量都存放在静态区(全局区);静态函数:静态函数限定了函数的作用域,用static修饰的函数只能在本源文件内使用,其它与普通函数并...

2019-03-06 18:45:45 436

原创 指针的概念解析,别再搞混了!指针数组和数组指针的区别!

1. 指针的的理解:    指针属于C/C++语言的范畴内的东西,与程序对内存的使用密不可分,先来介绍容易弄混的符号(token),例如有(例子1):  int *p;    那么*p代表什么、&p代表什么、p又是什么?    1.1 理解的基础:          我们常说变量变量,那变量到底是什么呢?在编程中,一个变量会涉及到几个东西token、变量所使用的内存地址、变量的 ...

2019-02-26 21:44:27 176

原创 C语言,内存错误——free():invalid next size(fast)

在项目开发中,程序报invalid next size错误,debug了很久。由于我分配的内存只有4字节(malloc(sizeof(int))),程序运行过程中发生了越界赋值的操作,即在4字节以外的地址进行了赋值操作。这样导致破坏了原本malloc的4个字节的内存,所以free()就失败并报错了。C语言编程中,关于内存有几点需要注意的:1、malloc要和free配对,new和del...

2019-01-28 14:22:46 13893

原创 静态函数的作用

用关键字“static”修饰的函数称为静态函数,和静态变量的存储方式都是静态存储,但又有所区别。现在主要讲静态函数:1、用static修饰的函数,系统会给程序分配一块一直存在并能被使用的内存,避免了函数在调用时在堆栈(栈)区的出栈入栈操作,速度和性能大大地提高。2、静态函数只能在声明定义的C源文件使用,且与同名的默认类型的函数不能发生名称冲突。3、具体静态函数存放的内存区域,有何讲究有...

2019-01-27 19:13:43 6084

原创 gdb调试加载不到源文件

./configure 、make、make install三步走编译安装好软件包后,修改了源文件的路径或文件名。后面使用gdb调试可执行文件后,加载不到源文件。于是把可执行文件删除后又重新编译安装了一遍,调试时还是找不到源文件的代码,list命令显示不了。很是头疼,明明重新编译了一遍,而且重新表编译后,没有移动或修改过源文件的名称或者路径,按理应该找得到源文件的代码并list显示的。后面重新...

2019-01-18 15:51:45 3158

原创 shell脚本无法执行的问题

在windows上新建了一个a.sh的文件,并写好了shell脚本,然后利用Mobaxterm将该文件上传到服务器。在执行脚本的过程中,提出错误,反复检查是不是shell脚本写错了,后面有检查是否存在逻辑错误,均无果。最后在linux服务器上新建了一个a2.sh脚本,并把a.sh脚本的内容原封不动的拷贝到a2.sh,脚本正常执行。原因:由于在windows下用的是notepad++工具编写...

2019-01-04 21:03:26 3268

原创 声明全局变量和外部变量引入的问题

在较大的项目里面,在a.c文件声明了全局变量double x,在b.c文件里使用该全局变量,故需要声明extern double x,才能在b.c文件范围内使用。由于犯二,把extern double x写成了extern int x,程序内部无法确定全局变量x的类型时double还是int,发生了一系列想砸键盘的事情,坐一下笔录!切记!...

2018-12-04 22:48:03 1282

原创 编译器优化——安全性和效率的权衡

在项目编译的时候,程序出现的奇葩的行为,在程序中有一个语句如下:........fprintf(fp,"%" PRId32  "%.2f\n", x , y);........编译没有问题,能顺利通过,但是运行时,确无法将变量x和y输出到指定文件。着实很生气,折腾了好久,debug、gdb反反复复,觉得程序逻辑各方面完全没有问题,怀疑人生。最终,猜想会不会是编译器设置了优化编译...

2018-12-04 21:03:13 589

转载 关于cpu使用率和cpu平均负载的详细剖析

https://www.cnblogs.com/muahao/p/6492665.html-------------------------------------------------------top命令详解http://blog.51cto.com/wangyan112/1592587

2018-12-02 21:18:35 519

原创 CentOS6.8桌面系统崩溃,无法进入桌面系统!!???

我的vmware虚拟机上安装的是CentOS6.8系统,频繁的遇到了桌面系统崩溃的问题,系统可以用远程命令行工具连接且能正常工作。唯独进入不了桌面,一直黑屏,没有报错信息。一共遇到了三次:1.第一次是没有关闭虚拟机,直接关闭了主机,虚拟机下的centOS黑屏~2.第二次是主机卡死了,强制切断电源,虚拟机下的centOS黑屏~3.第三次主机设置了从不睡眠,晚上还好好的,第二天过来,又出问...

2018-11-15 16:15:43 2767

原创 完全备份、增量备份、差异备份

完全备份:所有选中的标记的文件都备份存档,清楚存档属性增量备份:备份上一次备份(无论何种类型的备份)到此次备份的时间段内被修改过的文件,清楚存档属性差异备份:备份上一次完全备份到此次备份的时间段内被修改过的文件,不清楚存档属性。ps:存档属性:说白了就是标记,比如周天做了一次完全备份,则所有文件的存档属性被清楚,当周二文件2被修改,文件2的存档属性会被加上,当进行非完全备份时,只备份有...

2018-11-04 17:22:39 493

原创 fsck命令修复linux文件系统损坏的问题

当出现虚拟机无法正常开始,并提示文件系统出错时,可以再命令行输入“fsck -a“” 命令自动修复文件系统的错误,然后在reboot重启,即可修复该问题。...

2018-10-29 20:06:38 1116

原创 linux手动安装软件包时,系统搜索路径和环境变量的问题!

PATH:可执行文件的搜索路径变量C_INCLUDE_PATH:C头文件搜索路径变量LD_LIBRARY_PATH:动态库搜索路径变量LIBRARY_PATH:库搜索路径变量PKG_CONFIG_PATH:pkg-config工具包使用的搜索路径变量,常用于链接第三方库的编译。每个变量都有特定的用处。但是在手动安装软件包时,软件包不能正确识别出这些环境变量,具体原因未知。靠...

2018-10-22 22:29:31 275

原创 安装高版本glib和pcre正则依赖库的坑!

因为项目需要安装高版本的glib,而glib库依赖于pcre库,首先安装pcre库有几点需要注意的地方:./configure --prefix=安装路径 --enable-utf-8 --enable-unicode-properties 这行命令很简单,长选项--prefix用于配置软件包的安装目录,两个--enable选项是为了使编译后的pcre库支持utf-8编码。重点来了,安...

2018-10-22 20:25:33 1317 1

原创 关于codeblock无法进行gdb调试的问题

       我的codeblock使用的编译器是mingw,没有自带的gdb调试工具。       首先,自己尝试从官网下载gdb的二进制包,将二进制包解压之后有bin、share两个文件夹,于是将bin文件夹的gdb.exe拷贝到编译器mingw的bin文件夹下,尝试调试。问题来了,各种缺.dll文件,好不容易从网上下载下来,.dll文件缺失的问题是解决了,然而各种莫名其妙的错误,对!!!...

2018-07-30 15:56:26 1591

原创 centOS安装C++编译器

1. 首先使用"rpm -qa | grep gcc"查询自己的centOS上是否已经安装过gcc2. 如果没有,再使用“yum install gcc-c++”命令直接安装c++编译器(注:yum是centOS的软件管理命令,如果是ubantu等其它发行版本的linux,则使用其他的命令)...

2018-03-10 17:23:17 1903

空空如也

空空如也

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

TA关注的人

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