Ccvita - ccvita.com - 平凡的世界
General Information:
Latest News:
MooC的一些设计思路 8 Sep 2012 | 11:29 pm
题外话 由于公司业务需要用C做一些实现,和C++不同的是,C并没有太多的库和方案供选择,所以我们只好自力更生,努力重复造车轮。 做技术十来年的时间,说实话底层技术框架自己也写过不少个,不管是个...
VPS下CentOS装机记录 19 May 2012 | 03:47 pm
记录下来备忘 修改hostname 添加用户 sudo无需密码 在尾部加入以下内容 免密码用key登录
Linux下protobuf-c的安装 12 May 2012 | 04:45 pm
前言 最近需要用到Google出的Protocol Buffer来做一些服务相互之间的通讯,由于Protocol Buffer原生没有对C的支持,只能使用protobuf-c这个第三方库,加上网上也没有完整的安装方式,就记录下来了。 Protocol Buffer是什么? Protocol Buffer是一种语言无关、平台无关、扩展性好的用于通信协议、数据存储的结构化数据串行化方法。有如XM...
POSIX线程不安全函数 10 Apr 2012 | 12:52 am
这几天调bug,该bug的特点是随机出现,而且不可重现!找了一天之后,终于发现,是因为在多线程函数中用了线程不安全的strtok函数导致的。 功能:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。 说明:strtok()用来将字符串分割成一个个片段。参数s指向欲分割的字符串,参数delim则为分割字符串,当strtok()在参数s的字符串中发现到参数delim的分割字符时...
Linux下常用I/O模型 5 Mar 2012 | 09:32 pm
简介 Linux异步I/O是Linux内核中提供的一个相当新的增强。它是2.6版本内核的一个标准特性,异步非阻塞I/O背后的基本思想是允许进程发起很多I/O操作,而不用阻塞或等待任何操作完成。稍后或在接收到I/O操作完成的通知时,进程就可以检索I/O操作的结果。 这并不是一个详尽的介绍,但是我们将试图介绍最常用的一些模型来解释它们与异步I/O之间的区别。下图给出了同步和异步模型,以及阻塞和非阻...
Typecho中文验证码Captcha插件 8 Feb 2012 | 05:18 pm
前言 实在是受不了每天都要删除掉上百条的垃圾评论,干脆自己做了个验证码插件,顺带做的完善了些,分享给大家。 本插件是在评论验证码插件基础上完善而来。所不同的是,采用了最新的securimage 3.0.1,并且支持支持Sina App Engine环境,同时将大部分的配置选项放在了插件设置中,方便新手使用。 安装 首选,点击下载本插件; 其次,将Captcha目录放置在Typecho根目...
推荐Mac软件Alfred 31 Jan 2012 | 11:54 pm
实在忍不住推荐这个软件了, 身边的朋友们逐渐都在使用Mac OS了,每次我都会推荐Alfred这个软件。推荐来推荐去挺蛮烦的,干脆写篇文章, 下次有朋友新入手Macbook,我就直接附送本文章链接一枚。 Alfred是什么 Alfred是一个依靠键盘操作来提升Mac OS X使用效率的工具,它可以让打开程序、搜索互联网、执行常用命令加速。原文介绍是 Alfred is a keyboard-...
POSIX定时器:timer_settime() 5 Jan 2012 | 10:18 pm
最强大的定时器接口来自POSIX时钟系列,其创建、初始化以及删除一个定时器的行动被分为三个不同的函数:timer_create()(创建定时器)、timer_settime()(初始化定时器)以及timer_delete(销毁它)。 创建一个定时器 int timer_create(clockid_t clock_id, struct sigevent *evp, timer_t *timer...
PHP扩展开发:第一个扩展 14 Dec 2011 | 11:12 pm
在上一篇文章《PHP扩展开发:安装PHP》我们已经将开发PHP扩展的PHP环境安装成功,那么接下来采用最简单直接的方式创建第一个扩展。 我们先假设业务场景,是需要有这么一个扩展,提供一个叫ccvita_string的函数,他的主要作用是返回一段字符。(这个业务场景实在太假,大家就这么看看吧)对应的PHP代码可能是这样: 第一步,生成代码 PHP为了扩展开发的方便,提供了一个类似代码生成器的工...
PHP扩展开发:安装PHP 8 Dec 2011 | 08:39 am
前言 在几种情况下,我们会需要进行PHP扩展开发: PHP本身无法访问的资源或是调用,通过扩展的方式可以实现 处于性能和效率的考虑,用C实现会更好 处于商业或代码保护考虑,将代码封装起来 为了更深入的了解PHP,从这里入门 不管是出于什么原因吧,在看这篇文章的时候,我默认你是有进行PHP扩展开发这个需求的。本篇文章会分为三个系列从安装、简单实现一个扩展、到深入理解扩展机制和相关API。...