VC++ 线程池(h)

#ifndef _ThreadPool_H_ #define _ThreadPool_H_ #pragma warning(disable: 4530) #pragma warning(disable: 4786) #include #include #include #include u...

2013-10-31 10:36:29

阅读数 1843

评论数 0

单线程和多线程的优缺点(windows平台)

今晚和一同事在车上闲聊起了关于linux下的多线程和单线程问题,最后总结后得到一个问题:在软实时的linux操作系统下(cpu单核和多核分两种情况说),对消息的处理,是采用多线程程序处理快呢,还是采用单线程程序处理快呢?     由于问题假设太多,一时想不清楚,回来差了一下资料,暂时得到了一...

2013-10-31 09:21:06

阅读数 3037

评论数 0

Mysql中的from_unixtime,unix_timestamp 整型与datetime 字符串之间的转换

select from_unixtime(lasttalktime),lasttalktime  from im_ims_friend  select unix_timestamp('2013-10-13') select count(*) from im_ims_friend whe...

2013-10-29 14:54:00

阅读数 2010

评论数 0

语法:MySQL中INSERT INTO SELECT的使用

1. 语法介绍       有三张表a、b、c,现在需要从表b和表c中分别查几个字段的值插入到表a中对应的字段。对于这种情况,可以使用如下的语句来实现: INSERT INTO db1_name (field1,field2) SELECT field1,field2 FROM db2_n...

2013-10-29 14:20:42

阅读数 1259

评论数 0

libapr (apache portable runtime) 编程指南

1.libapr编程指南说明 2.libapr骨架代码 3.内存池(apr_pool_t) 4.错误状态(apr_status_t) 5.文件处理 6.文件锁  原文地址:http://dev.ariel-networks.com/apr/apr-tutorial/html/apr...

2013-10-29 10:05:36

阅读数 1249

评论数 0

windows下apache模块开发

最近学习windows下apache模块开发,在网上找了很多资料,发现都不是很全,经过一天的折腾,终于搞定,现贡献出来供大家一起学习:) 1.安装apache 安装包 httpd-2.2.21-win32-x86-no_ssl.msi    一定要custom全部安装,否则就不会有incl...

2013-10-29 08:44:12

阅读数 1403

评论数 0

QuickServer

QuickServer是个java开元框架,很方面很容易实现多线程、多客户端TCP服务应用。今天在QuickServer网站http://www.quickserver.org/下载文档DevelopersGuidev0.3.zip,此文档详细介绍QuickServer是如何应用的。现在把读后感受...

2013-10-28 22:25:38

阅读数 2780

评论数 0

linux上的GetTickCount函数

#include // 返回自系统开机以来的毫秒数(tick) unsigned long GetTickCount() { struct timespec ts; clock_gettime(CLOCK_MONOTONIC, &ts); return (t...

2013-10-28 16:33:19

阅读数 14245

评论数 0

apache 模块编写(c++)

注: 路径为:/home/xxx/ 工具为:apxs 框架搭建:   1、准备工作:安装apache对应的httpd-devel,主要是为了安装apxs。   2、生成一个apache的模块框架:cd /home/xxx/; apache module:a...

2013-10-28 14:56:07

阅读数 1280

评论数 0

socket Tcp编程笔记--心跳包的实现逻辑

项目原版本使用的是boost实现的客户端访问服务端的socket,开始只是知道使用到了心跳包来保活,具体心跳包如何实现的,第一步明白的是隔10秒钟会发送给服务端心跳包,服务端隔10秒钟也会发给客户端心跳包,但是后来又有了疑问,那服务端和客户端是否需要计数的机制呢?比如说客户端在3次没有收到服务端的...

2013-10-28 11:02:23

阅读数 5712

评论数 0

关于socket阻塞与非阻塞情况下的recv、send、read、write返回值

1、阻塞模式与非阻塞模式下recv的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞recv返回值没有区分,都是 0接收到数据大小,特别:返回值  2、阻塞模式与非阻塞模式下write的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞write返回值没有区分,都是 0...

2013-10-28 09:34:17

阅读数 1589

评论数 0

recv函数返回值说明

recv函数 int recv( SOCKET s, char FAR *buf, int len, int flags); 不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据。该函数的第一个参数指定接收端套接字描述符; 第二个参数指明一个缓冲区,该缓冲区用来存放recv函数...

2013-10-28 09:29:10

阅读数 16834

评论数 1

Boost.Asio性能测试

今天看到 http://my.oschina.net/u/200693/blog/3446230 测评asio的效率, 结果如下表: c++ boost::asio connect=10000,active connect=100,req=148791,time=60,req/sec=...

2013-10-27 22:45:22

阅读数 11116

评论数 4

使用asio搭建服务器

1. 背景介绍 1.1 什么是asio 使用了linux、asio、protobuf等大量开源项目,开发过程共也借鉴了其他一些开源项目。 asio由Christopher M. Kohlhoff大牛从2003年着手开发,2006年申请加入C++ tr1,2008年3月份加入boost1.35....

2013-10-27 22:33:12

阅读数 5954

评论数 0

boost::asio::ip::tcp::socket is connected?(如何知道socket的链接是链接或断开?)

翻译:华亮      From:http://stackoverflow.com/questions/1511129/boostasioiptcpsocket-is-connected 问题: I want to verify the connection status...

2013-10-27 22:26:33

阅读数 5525

评论数 0

boost::async_read_some连续接收数据

我在最近工作的时候用到了boost的http_server程序,这个http_server是一个框架用于接收并解析http协议。这个框架在接收get请求时没有任何问题,当接收post数据时,当数据大于>2k时,无法正确接收,后来发现sync_read_some函数一次只能接收大约1k数据,如...

2013-10-27 22:16:20

阅读数 6607

评论数 0

基于boost asio实现的支持ssl的通用socket框架

情景分析    现已存在一个可用稳定的异步客户端类http_client_base,该类基于boost asio实现了连接服务器,发送请求,获取响应和解析http数据等操作,该类的大致实现框架如下   1class http_client_base   2{   3public: ...

2013-10-27 22:15:15

阅读数 3068

评论数 0

Boost.Asio的使用技巧

基本概念 Asio proactor I/O服务 work类run() vs poll()stop()post() vs dispatch()buffer类缓冲区管理 I/O对象 socket信号处理定时器strand 参考 最近尝试使用了一下Boost.Asio,不...

2013-10-27 22:14:07

阅读数 12021

评论数 1

boost.asio防止恶意空连接的方法

网络服务器通常要应对一些意外情况,如空连接行为,指在遇到客户端连接后不进行任何操作,并很可能在大量空连接情况下导致服务器资源耗尽而无法工作。 以下代码主要工作在连接后首次接收客户端消息的环节添加一个timer,并在指定时间后检测是否已接收到消息(验证消息环节此处略去),如果没有收到消...

2013-10-27 10:09:03

阅读数 1963

评论数 2

boost::asio发送与传输相关的几个函数,备忘

刚连接上:调用async_accept 1 boost::shared_ptr spMySocket(new tcp::socket(m_ioservice)); 2 m_acceptor.async_accept(*spMySocket,boost::bind(&C...

2013-10-27 10:03:10

阅读数 1873

评论数 0

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