自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Ring a Bell : Three Sort Algorithms

The detail contents of how to code and how it works just lie in the book written by Simon Harris and James Ross, want to know more? so check

2011-08-31 18:03:32 492

原创 性能改造小记

一条专用线程负责接受连接,把新接收到的socket通知线程池,线程池派其中一条线程处理该连接,当接收连接数量超过最大线程数时不再接收新连接,直到线程池有成员空闲下来了再次通知专用线程进行接收连接,线程池中的线程皆是处理完业务立即关闭socket,认为是短连接,这里的业务暂时实现为

2011-08-30 23:54:04 561

原创 Substitution Failure Is Not An Error

SFINAE原则初看是刺激的,写好之后是高效的,写错了就是既折磨编译器又折磨自己的。各种编译器对模板的支持程度又是不一样的,对待代码要有屈机精神,不然就只好向言不由衷的错误信息投降了。先旨声明,调试这里的代码用vc2008会顺利很多,template就是把编译器的功能发挥

2011-08-25 23:43:49 855

原创 模板强化Template Method & Singleton 模式

阅读之前期望你已经懂得模板方法模式及单例模式的原理。通俗软件设计模式的表述呈现由GoF先行打响头炮,其后各种版本的模式书籍层出不穷,大多示范实现都是以有多态特性的虚函数作为核心,每一个virtual function call是间接进行的,如此一来性能会有小小的损耗,但可读性良好

2011-08-25 12:00:38 578

原创 模板强化RAII

RAII的应用在C++这种高危语言中尤其重要,结合模板,效果更爽。先看应用:#include "stdafx.h"using namespace Loki;void myFree(char* s){ if (s != NULL) {  free(s

2011-08-24 17:59:13 610

原创 实现无需OO机制的观察者(性能至上)

模式大部分实现利用的是编程语言的继承多态等机制,以面向接口编程优先使用组合等等原则为实作的依归,把系统高内聚低耦合地划分了许多相对独立的类来实现拼装,模式套用多了难免出现很多类及各种子类,但却很大程度从结构上让系统的可维护性增强了,一般来说现在很多公司的OO系统就是这样做出来的。

2011-08-21 15:53:11 806

原创 boost:tuple解码

tuple想必人人都会用,究之实质,其实就是模板全特化及部分特化的又一种应用而已。简要的实现如下: template struct Tuple {  Tuple(){}  Tuple(typename traits::type_traits::const_reference a,   typename traits::type_traits::const_refer

2011-08-20 00:37:18 900

原创 linux app 无 core dump 退出的处理

1,首先要淡定。2,在程序退出之后马上echo $?,获得返回数字R。3,计算信号码和退出码: R & 0x7f = signal_no (R & 0xff00) >> 8 = exit_no4,这时就知道程序何故退出了。至于我的状况,就是没有处理SIGP

2011-08-16 17:55:10 1012

原创 Tips to Handle Linux APPs Crack Shit

Problem 1: linux应用程序段错误挺常见,得淡定。一般处理手法:Solution:1.编译时加入标志-g。2.设置core文件大小。 struct rlimit res = { .rlim_cur = RLIM_INFINITY, .rlim_max

2011-08-15 11:39:05 675

原创 C++ traits两种用途

C++ traits两种用途1. 利用编译器为自己约束程序行为。//拒绝使用double的traits,完全特化templatestruct type_restrict{ enum{value};};templatestruct type_re

2011-08-15 09:49:03 826

空空如也

空空如也

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

TA关注的人

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