自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Linux C/C++后台开发

Talk is cheap. Show me the code!

  • 博客(5)
  • 收藏
  • 关注

原创 memcmp比较两个struct是否相等

struct MyStruct{ char a; int b;};MyStruct A, B;memcmp(&A, &B, sizeof(MyStruct));A和B是否可以通过memcmp来判断是否相等。我一直以为虽然要内存对齐,但是a后面会补三个’\0’所以还是可以判断是否相等的。真是迷之自信!这个问题其实最主要是考察你要知道内存对齐,MyStruct的实际大小是8就够了

2017-03-07 16:04:05 9026 2

原创 不定参数函数牵扯出来的栈的生长方向和大端小端模式

主题:CPU的架构决定了大端小端模式和栈的生长方向。 首先参数从右到左压栈的方式,这是C语言决定的,比如说Pascal就是从左到右压栈,所以Pascal不支持不定参数函数。比如:printf("%s%d%d\n", s, a, b);格式字符串是确定存在的,后面的变量都是不确定的或者说不知道有多少个。如果格式字符串最后一个入栈,位于栈顶,第一个出栈然后解析格式字符串得到不定参的个数,挨个出栈,这样

2017-03-06 21:08:32 692

原创 #define MAX(a, b, ……)

用宏定义MAX(a,b)求两个数最大值:#define MAX(a,b) a>b?a:b用宏定义MAX(a,b,c)求三个数最大值:#define MAX(a,b,c) (a>b?(a>c?a:c):(b>c?b:c))用宏定义MAX(a,b,c,d)求四个数最大值:#define MAX(a,b,c,d) (a>b?a:b)>(c>d?c:d)?(a>b?a:b):(c>d?c:d)

2017-03-06 15:46:31 9591 3

原创 线程池的最优大小

计算密集型应用(CPU密集)顾名思义就是应用需要非常多的CPU计算资源,I/O在很短的时间就可以完成,而 CPU 还有许多运算要处理。在计算密集型应用中,线程池的大小应该等同于主机中 CPU 的数量。再添加更多线程将会打断请求的处理,因为线程的上下文切换也会延迟响应时间。非阻塞型 IO 应用将会是 CPU 密集型的,因为在请求得到处理的时候没有线程等待时间。

2017-03-01 17:13:36 3615 1

原创 my.cnf参数配置:InnoDB引擎性能优化

在网上看了无数的my.cnf的配置,大多数提到的配置无外乎这几个: 1. innodb_buffer_pool_size 2. innodb_log_file_size 3. innodb_log_buffer_size 4. innodb_flush_log_at_trx_commit 然后自己写了两个例子,一个单线程的,一个多线程的来通过改变配置参数来测试是否提高了性能。结果是只有in

2017-03-01 16:10:00 722

空空如也

空空如也

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

TA关注的人

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