- 博客(11)
- 资源 (10)
- 收藏
- 关注
原创 aio,epoll,libevent,boost::asio解决的问题
这几天一直在做linux大批量数据的解决方案,不断的深入了解了一下aio,epoll,libevent,boost::asio。以前只知道他们都是做异步/非阻塞的,但是具体解决的问题的关键点是什么,通过这几天的深入了解,把他们总结一下:aio是linux2.6以后内核实现的异步IO,或者说他才是真正意义上的异步IO。<!--@page {margin:0.79in}p
2011-12-29 14:08:09 7191
原创 工作代码片段-aio
aio是linux上的异步IO实现,具体测试代码如下: aiocb ab; bzero( (char *)&ab, sizeof(struct aiocb) ); int fd = open("a.txt", O_RDWR | O_APPEND); ab.aio_buf = malloc(201); ab.aio_fildes = fd; ab
2011-12-29 13:55:08 1683
原创 工作代码片段-epoll
测试的实例: int fd = open("a.txt", 'r'); epoll_event ev; int efd = epoll_create(1); ev.events = EPOLLIN | EPOLLOUT; ev.data.fd = fd; epoll_ctl(efd, EPOLL_C
2011-12-28 09:26:56 1245
原创 工作代码片段-libevent
一个简单的测试实例: void acall(evutil_socket_t af, short, void *param) { std::cout << "calling" << std::endl; } sfd = open("a.txt", 'r'); struct event_
2011-12-28 09:22:51 1217
原创 工作代码片段-qsqlite
打开数据库: QSqlDatabase database = QSqlDatabase::addDatabase("QSQLITE"); database.setDatabaseName(mDataName); if(!database.open()) { return false; } QSqlQuery *queryer = new QS
2011-12-26 16:14:27 1438
原创 工作代码片段-QtSOAP
初始化QtSoap: soap = new SOAPService(this); soap->setNamespace("http://xxxxxxx/"); soap->setHost("192.168.0.160", 5577); soap->setDbName("0532"); messageStr = tr("SOAP初始化成功!\n服务器:
2011-12-22 17:29:20 3332 1
原创 工作代码片段-定时更新svn
团队合作过程中除了需要及时的提交代码,并通知成员外,还需要及时更新外部代码,以便于快速的协作,定时更新代码设置为crontab+bash脚本:crotab设置:*/30 * * * * /home/cnsworder/work/fep/updatesvn.sh脚本:#!/bin/bashcd /home/cnsworder/work/fepsvn update >> .
2011-12-21 09:11:13 1825 2
原创 QML一点点注意的地方
1、id需要小写2、模块名首字母要大写3、由原来的import Qt 4.7 修改为了import QtQuick 1.04、states是:[]5、国际化用:qsTr()6、导入js文件用:import *.js as Name7、属性的设置声明方法:property int len 12,别名:property alias cellColor: rectangle.co
2011-12-20 16:31:18 2396
原创 工作代码片段-makefile模板
项目领导要求比较高,全部是手写makefile,没有借助autotools或者cmake之类,不过却形成了一个可以复用的定义模板:ifdef releaseDIR = .LIB_DIR = ${DIR}/../../../lib/fepDEPS = -lplatform -lappconf -lconfig -ltinyxml -lkhreadlineCFLAGS
2011-12-20 15:20:45 1667 1
原创 工作代码片段-格式化所有代码
为了方便格式化所有代码,写的脚本:function format(){ echo "*********format codes tool************" find . -name *.cpp | xargs astyle --style=linux --indent=spaces=4 find . -name *.h | xargs astyle --styl
2011-12-20 13:16:15 1298
原创 工作代码片段-svn提交并发送邮件
这段代码是我用来提交svn代码,同时给团队的所有成员发送邮件的脚本。#!/bin/bashme=`whoami`mail="cnsworder@gmail.com ${me}"cmd=`echo $@`msg=${2##*-m}function runcmd(){ echo "" >> .svn.log echo "commit svn:" >> .svn.lo
2011-12-20 13:14:04 3119
电子证据取证技术的研究
2007-12-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人