- 博客(213)
- 资源 (9)
- 收藏
- 关注
原创 登记信号集
sigaction.c#include #include #include #include #include void my_func(int signum){ printf("if you want to quit,please try SIGOUIT\n");}int main(){ sigset_t set, pendse
2012-09-05 20:13:57 520
原创 简单信号处理
#include #include #include /* * SIGHUP: 从终端上发出的结束信号 * SIGINT: 来自键盘的中断信号(Ctrl-C) * SIGQUIT:来自键盘的退出信号(Ctrl-\) * SIGFPE: 浮点异常信号(例如浮点运算溢出) * SIGKILL:该信号结束接收信号的进程 * SIGALRM:进程的定时器到期
2012-09-05 17:08:22 577
原创 有名管道
fifo_write.c#include #include #include #include #include #include #include #define FIFO_SERVER "/tmp/myfifo"int main(int argc, char** argv){ int fd; char w_buf[100];
2012-09-05 15:24:45 393
原创 流管道
标准流管道与linux中文件操作有文件流的标准I/O一样,管道的操作也支持基于文件流的模式。接口函数如下:库函数:popen();原型:FILE *open (char *command,char *type);返回值:如果成功,返回一个新的文件流。如果无法创建进程或者管道,返回NULL。管道中数据流的方向是由第二个参数type控制的。此参数可以是r或者w,分别代表读或写。但不能同
2012-09-04 15:37:46 692
原创 管道读写
管道主要用于不同进程间通信。通常先创建管道,再通过fork()函数创建一个子进程。子进程写入和父进程读的命名管道。管道读写注意事项:可以通过打开的两个管道来创建一个双向的管道。但需要在子正确的设置文件描述符。必须在系统调用fork()中调用 pipo()否则子进程将不会继承文件描述符。当使用半双工管道时,任何关联的进程都必须共享一个相关的祖先进程。因为管道存在于
2012-09-04 15:12:32 802
翻译 链表反转的两种实现方法
#include using namespace std;//元结点struct Node{ int data; Node *next;};//链表反转(循环方法)Node *Reverse(Node *head){ Node *prev = NULL; Node *cur = NULL; N
2012-08-10 18:00:08 558
原创 c ip2long
#include #include #include #include int main(){ struct in_addr addr; const char * const straddr = "192.168.0.1"; int ret = inet_aton(straddr,&addr);
2012-08-10 17:21:43 761
原创 strrep()函数的实现
char* strrep(const char* src, const char* from, const char* to){}#include string.h>#include malloc.h>char* strrep(const char* src, const char* from, const char* to){ char *des,
2012-08-10 16:47:08 4383
转载 eval解析JSON中的注意点
在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式:1.一种为使用eval()函数。2. 使用Function对象来进行返回解析。使用eval函数来解析,并且使用jquery的each方法来遍历用jquery解析JSON数据的方法,作为jquery异步请求的传输对象,jquery请求后返回的结果是json对象,这里考虑的都是服务器返回JSON形式的字符
2012-08-09 16:48:56 447
转载 命令行下载利器- Aria2
Aria2 是 Linux CLI 界面下的多线程下载工具,与之前介绍的 axel 类似,但比之更强大。它支持 HTTP/HTTPS, FTP, BitTorrent 和 Metalink 协议,支持多线程下断点续传。另外,这里有一个名为 aria2fe 的 aria2 前端 GUI 程序,直接执行里面编译好的二进制程序就可使用。项目主页: http://aria2.sourcefor
2012-08-09 15:48:12 1671
翻译 人脸识别核心算法
在检测到人脸并定位面部关键特征点之后,主要的人脸区域就可以被裁剪出来,经过预处理之后,馈入后端的识别算法。识别算法要完成人脸特征的提取,并与库存的已知人脸进行比对,完成最终的分类。我们在这方面的主要工作包括:基于LGBP的人脸识别方法问题:统计学习目前已经成为人脸识别领域的主流方法,但实践表明,基于统计学习的方法往往会存在“推广能力弱”的问题,尤其在待识别图像“
2012-08-09 14:57:15 1175
原创 c++ explicit
String s1 = 10;分配10个字节的空字符串String s2 = 'a';分配int(‘a’)个字节的空字符串隐式转换成了分配若干字节的空字符串,容易令人误解。为了避免这种错误的发生,我们可以声明显示的转换,使用explicit 关键字:class String{explicit Stirng(int n)//本意是预先分配n个字节给字符串{
2012-07-30 15:21:48 524
转载 【转】转 Linux调优方案,sysctl.conf的设置
$ /proc/sys/net/core/wmem_max最大socket写buffer,可参考的优化值:873200$ /proc/sys/net/core/rmem_max最大socket读buffer,可参考的优化值:873200$ /proc/sys/net/ipv4/tcp_wmemTCP写buffer,可参考的优化值:32768 436600 873200
2012-07-16 21:04:56 15169
原创 automake,autoconf使用详解
作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便.一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了.在本文中,将给大家介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的 Makefile,这样就可以象常见的 GNU程序一
2012-07-12 11:57:20 763
原创 mongo数据库 备份 还原
备份:./mongodump -h 127.0.0.1 -d speedate -o /back还原:./mongorestore -h 127.0.0.1 -d speeddate -drop --directoryperdb /back/speeddate
2012-07-11 19:45:09 1025
原创 jquery css 定义背景不重复
a{ background-image:url(www.xxx.com/xxx/xxx.gif); background-repeat:no-repeat; background-attachment:fixed; background-position:top; }
2012-07-11 19:44:09 2839
原创 php glob() 列出目录及文件
print_r(glob('*'));输出:Array([0] => A.php[1] => dir1[2] => dir2)print_r(glob('*.php'));输出:Array([0] => A.php)
2012-07-11 19:43:01 1330
原创 nginx proxy_pass末尾神奇的/
http://otherserver;和http://otherserver/;有什么区别呢?location /service/ {proxy_pass http://otherserver;proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;}location
2012-07-11 19:36:34 29659 1
原创 c++ string 简单应用一
#include #include using namespace std;inline void test(const char *title, bool value){ cout }int main(){ string s = "DEF"; cout string m; co
2012-07-07 21:10:09 634
原创 c++ 深复制
深复制:如果一个类的数据成员需要使用动态分配的堆资源,并且这个类的对象之间发生了数据成员拥有的堆资源复制过程,这个过程就可以叫深复制。浅复制:对象存在数据成员拥有堆资源但复制过程并未实现数据成员拥有堆资源的复制情况视为浅复制。 #include #include using namespace std; class CPerson { pu
2012-07-07 20:56:20 1742
原创 c++ vector数组对象的使用
#include #include using namespace std; double average(const vector &arr) { double sum = 0; for (unsigned i = 0; i { sum += arr[i]; } return sum /
2012-07-07 19:19:21 1142
原创 c++ 指向类的静态成员的指针
对类的静态成员的访问不依赖于对象可以用普通的指针来指向和访问静态成员例:#include using namespace std;class point{ public: point(int xx=0, int yy=0) { X = xx; Y = yy;
2012-07-07 18:45:08 2269
原创 c++ this指针
非静态成员的指针一、定义类型说明符 类名::指针名//指向公有数据成员的指针类型说明符 (类名::*指针名)(参数表)//指向公有成员函数的指针二、赋值 //确定指向类的哪个成员指针名 = &类名::数据成员名指针名 = 类名::函数成员名三、引用对象名.类数据名成员指针名(对象名.类函数成员)(参数表)或对象指针名->*
2012-07-07 18:32:49 411
原创 mysql profiling 应用
1)先打开profiling ==> set profiling = 1;mysql> set profiling = 1;Query OK, 0 rows affected (0.00 sec)2) 执行查query操作mysql> select * from mall where id = 12;3)show profiles; 显示所有的profile 选择想查看的Q
2012-07-05 16:23:35 770
翻译 libxml -- 解析 XML 文档
参考http://xmlsoft.org/http://www.miidoo.cn/info_detail-204.htmlhttp://www.blogjava.net/wxb_nudt/archive/2007/11/28/161340.htmlhttp://www.ibm.com/developerworks/cn/aix/library/au-libxml2.htmlhttp://
2012-07-04 11:41:09 879
转载 vim 命令(全)
本章提供足够的信息使你用够使用 Vim 来做基本的编辑。这里提供的方法不一定是高效 快捷的。但起码是有效的。花些时间去练习这些命令,这是后面的知识的基础。|02.1| 第一次运行 Vim |02.2| 插入文本 |02.3| 移动光标 |02.4| 删除字符 |02.5| 撤销与重做 |02.6| 其它编辑命令 |02.7| 退出 |02.8|
2012-07-04 11:40:06 1193
翻译 Apache Rewrite 规则详解
在开篇之前:我想说这篇文章其实是我刚刚接触Rewrite的时候学习的文档,应属转载,但是在这里我不想写明原地址,原因是文章中大多数给出的配置命令经实验都是错误的。需要原文的可以在谷歌上搜索一下”Apache Rewrite 规则详解”好在我对正则表达式有所了解,把原文的代码都通过自己的理解改写了一下,并都能够达到题设的要求,并联想需求添加了例子。本文是经过我实验后修改有效的,如果还是出
2012-07-04 11:38:32 497
转载 一个简单的linux线程池
线程池:简单地说,线程池 就是预先创建好一批线程,方便、快速地处理收到的业务。比起传统的到来一个任务,即时创建一个线程来处理,节省了线程的创建和回收的开销,响应更快,效率更高。 在linux中,使用的是posix线程库,首先介绍几个常用的函数:1 线程的创建和取消函数pthread_create创建线程pthread_join合并线程
2012-07-04 11:36:38 461
原创 Linux C++线程池
这是对pthread线程的一个简单应用1. 实现了线程池的概念,线程可以重复使用。2. 对信号量,互斥锁等进行封装,业务处理函数中只需写和业务相关的代码。3. 移植性好。如果想把这个线程池代码应用到自己的实现中去,只要写自己的业务处理函数和改写工作队列数据的处理方法就可以了。 Sample代码主要包括一个主程序和两个线程实现类
2012-07-04 11:35:48 861
转载 Linux下C++的多线程编程---(转载)
1、 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 为什么有了进程的概念后,还要再引入线程呢
2012-07-04 11:34:01 1132
翻译 日志分割工具cronolog
1. 关于本文 本文将以cronolog 1.6.2、apache 2.2.6为例,以CentOS 5为平台,讲述cronolog的安装和设置。2. 关于cronolog cronolog是一个简单的过滤程序,它从标准输入设备读入日志记录,并把这些记录写入到输出文件集,输出文件的名字由一个文件名模板和当前的日期时间组成。cronolog通常与web服务器一起使用,例
2012-06-11 17:40:33 691
原创 php页面生成耗时分析
socket读写使用 smarty 解析 space 的 blog 页模板,php 与 spuser 和 blogapp 通过 socket 各交互一次,spuser 和 blogapp 为虚拟的桩模块,接到请求立即返回。从 socket_connect 到 socket_close 直接的一次 socket 交互的时间,包括写140(164)字节的请求,读取shead,unpack sh
2012-04-01 15:45:39 1550
转载 Web高并发访问:用HAPorxy实现负载均衡
HAProxy是一款反向代理服务器工具,通过它,可以实现负载均衡。它支持双机热备支持虚拟主机,但其配置简单,拥有非常不错的服务器健康检查功能,当其代理的后端服务器出现故障, HAProxy会自动将该服务器摘除,故障恢复后再自动将该服务器加入。新的1.3引入了frontend,backend,frontend根据任意HTTP请求头内容做规则匹配,然后把请求定向到相关的backend.
2012-04-01 15:40:49 801
原创 C 链表(单链表的操作)
我没写注释link.h#ifndef LINKEDLIST_H#define LINKEDLIST_Htypedef struct node *link;struct node{ unsigned char item; link next;};link make_node(unsigned char item);void free_n
2012-03-10 14:03:53 484
翻译 调用系统函数向进程发信号core
#include int main(void){ while(1); return 0;}# ./a.out &[2] 1669# kill -SIGSEGV 1669# 回来[2]- Segmentation fault (core dumped) ./a.out#$
2012-03-08 15:49:57 528
原创 SubVersion服务器Windows安装过程
1.环境和软件准备操作系统: windows 7Window-Subvsersion : http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 Windows 常用客户端 TortoiseSVN :http://tortoisesvn.net/downloads 下载 subversi
2012-01-20 13:15:54 592
原创 Linux C MakeFile
<br />/* main.c */<br /> <br /><br />#include "mytool1.h"<br />#include "mytool2.h"<br /> <br />int main(int argc,char **argv)<br />{<br /> mytool1_print("hello");<br /> mytool2_print("hello");<br />}<br /> <br />/* mytool1.h */<br /> <br /><
2011-03-17 11:43:00 533
原创 编译php5遇到iconv错误的解决方法
<br />第一个方法:<br />在make 时,用make ZEND_EXTRA_LIBS='-liconv'代替<br /><br /><br /><br /><br />第二方法,麻烦一些<br /><br />http://rental.zhupiter.com/postshow_273_1_1.html<br /><br /><br />在安裝 PHP 到系統中时要是出现「undefined reference to `libiconv_open'」之类的错误信息,那表示在「./configur
2011-03-16 17:35:00 2208
原创 解决mysql 添加插件时提示 ERROR 1289 (HY000): The ‘plugin’ feature is disabled; you need MySQL built with ‘HAVE_DLOPEN&#
<br />解决mysql 添加插件时提示 ERROR 1289 (HY000): The ‘plugin’ feature is disabled; you need MySQL built with ‘HAVE_DLOPEN’ to have it working 问题在编译mysql时先执行下面的命令<br />export CFLAGS=”-O2 -DHAVE_DLOPEN=1″<br />export CXXFLAGS=”-O2 -DHAVE_DLOPEN=1″
2011-02-21 16:38:00 2240
Wrox.-.Beginning.Php,.Apache,.Mysql.Web.Development.(2004)
2011-05-25
比较不错的Flex 教程
2010-05-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人