自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第一讲 go 语言简介

没有停止学习脚步的程序员,这篇博客这要介绍为什么要学习go语言,go语言是一种新的语言,一种并发的,带垃圾回收的、快速编译的语言 不仅就有上述特点,更重要的是,在我面试几家公司之后,面试官反复提到如果会go语言的话会更好。(这样学习的动力马上就有)Go有什么优势可直接编译成机器码,不依赖其他库,glibc的版本有一定的要求,部署就是扔一个文件上去就完成。Go为软件构造提供了一种模型,它使依赖分

2016-07-28 15:25:39 503

原创 Linux 下几款程序内存泄漏检查工具

写这篇博客的原因呢是因为自己在编写基于Nginx磁盘缓存管理程序,目前已经进入测试阶段,关于这个程序的测试分为几个主要步骤:1.内存管理是否正确(因为这个程序本身开辟很多内存空间进行缓存管理,同时这个程序程序本身就是基于C/C++开发的,内存管理机制一直是程序员头痛的东西)2.程序的健硕性如何(服务器任何程序的基本要求就是要满足高并发的要求,也就是说,如果达不到这个基本要求,程序并并不能成为服务器

2016-07-23 10:15:06 34031 1

原创 静态库和动态库

有一篇博客专门介绍程序编译过程,在程序编译步骤中有一个很重要的步骤就是链接,这篇博客主要比较静态库和动态库的差别。 在了解两者的区别,我们先学习一下基础知识库是什么库就是写好的,现有的,成熟的可以 复用的代码,现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都是从零开始,本质上库 就是一种可执行代码的二进制形式,可以被操作系统载入内存 执行,库有两种:静态库(.a,.lib)和

2016-07-21 14:33:30 474

原创 C 程序编译过程

通常我们使用gcc来生成可执行程序,命令为: gcc hello.c,默认生成可执行文件a.out,其中经过下面几个步骤:预处理(processing)编译(compilation)汇编 (Assembly)链接(Linking) 接下来将介绍每个步骤相应都做了那些工作预处理(preprocessing)将所有的#define删除,并且展开所有的宏定义处理所有的条件编译指令,比如#

2016-07-21 14:27:26 703

原创 C++ 中的sprintf和snprintf 函数的区别

在编程过程中经常有字符串转数字和数字转字符串,相应的函数大家最经常见到可能是atoi和itoa。但是itoa不是标准库里面的函数,所以接下来介绍下面两个函数sprintf和snprintf函数,并将它们比较一番。最近写的博客目前就是一些自己在实现基于 Nginx磁盘缓存的一些知识总结sprintf()函数用法int sprintf(char *string,char *format,arg_lis

2016-07-21 10:59:31 6910

原创 Nginx 模块自主开发十: 设计一个基于NGINX 的缓存服务

计算机不仅需要对计算机理论有一定的要求,同时要学以致用,这篇博客将结合公司给我的一个问题,我自主设计一个初步的方案 ,如何 有什么bug或是想法,可以提出来,我一直秉承一个思想:good idea worth spreading.只有将自己的学习计划放在互联网上,才会进步得更快。问题 将磁盘文件分块加载到内存,一般来说磁盘文件远大于内存空间,所以将磁盘文件分块,部分读入内存,系统预分配内存空间

2016-07-06 09:10:30 673 3

原创 Nginx 模块自主开发八: 总结 Nginx框架的流程

前面两篇博客:Nginx 模块自主开发六:源码剖析配置文件解析过程和 Nginx 模块自主开发七:源码剖析整个Nginx框架从源码层面上解析Nginx框架,这样导致太过于 细节,所以本篇博客将带领你系统上过一遍Nginx框架Nginx主框架的流程当启动Nginx程序时候,Nginx从入口函数Main()开始执行,检查命令行参数和环境变量,初始化ngx_modules数组,然后进入初始化函数ngx_

2016-07-01 15:16:06 1008

原创 C++ 类型转换运算符

C语言存在两种类型转换(隐式转换,显式转换) 隐式转换,是针对不同类型之间的赋值和运算,函数调用传递参数 这些的转换都是由编译器自动完成char ch; int i=ch; 显式转换 由程序员在变量前面添加型转换 char *pc=(char *)pb void *ps=(void*)paC++ 中的类型转换* 通过上述的两种方式,C语言大部分的类型转换都可以顺利进行,C++继承

2016-07-01 09:20:42 1073

空空如也

空空如也

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

TA关注的人

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