摘要: C++ 有stringstream这个工具可以方便的进行数据类型的转换 使用时包含 #include <sstream.h> using namespace std; 当需要将一个整形的数转换为字符串 如果需要将一个字符串转化为整形数 再次使用mystream需要清除之前的状态位 调用 mystre 阅读全文
posted @ 2016-05-17 16:05 恋恋风辰 阅读(691) 评论(0) 推荐(0) 编辑
摘要: 之前都是手动编译的,最近也学了下makefile相关的知识, 文件结构是这样的在server文件夹里有eventloop.h, eventloop.cpp, networking.h, networking.cpp, api_epoll.h, api_epoll.cpp,以及文件夹main, 在ma 阅读全文
posted @ 2016-05-17 15:28 恋恋风辰 阅读(445) 评论(0) 推荐(0) 编辑
摘要: 上一篇讲到了libiop基本结构,这次根据libiop提供的test跟踪下消息和运行流程 echo_server_test 函数内部添加了一个tcpserver,将函数一层一层展开 展开iop_add_tcp_server 解读iop_add_tcp_server 函数参数iop_base_t 是i 阅读全文
posted @ 2016-05-12 14:17 恋恋风辰 阅读(1870) 评论(0) 推荐(0) 编辑
摘要: 最近朋友推荐,学习了libiop这个网络库,作者封装的很全面,代码很简洁 适合初学者学习基于事件驱动的网络io 先看看iop_def.h, 这里面定义了常用的数据结构 tag_iop_base_t 主要用于管理所有事件,每个事件是一个iop_t, maxio表示最大的文件描述符, free_list 阅读全文
posted @ 2016-05-12 11:42 恋恋风辰 阅读(874) 评论(0) 推荐(0) 编辑
摘要: 上一篇讲述了eventloop的结构和创建,添加文件事件删除文件事件,派发等等。 而eventloop主要就是调用不同网络模型完成事件监听和派发的。 这一篇主要讲述epoll网络模型,redis是如何封装和调用的 下面是epoll_event的结构 Ae_epoll.c文件中回传的数据结构 Ae_e 阅读全文
posted @ 2016-05-09 12:40 恋恋风辰 阅读(429) 评论(0) 推荐(0) 编辑
摘要: 上一篇讲完了initServer的大体流程,其中aeCreateEventLoop(),这个函数 没有详细说明,我们在这一篇里讲述Ae.h和Ae.c, 这里面的api阐述了如何创建 eventLoop和添加文件读写事件等等。 ae.h中的解释 ae.cpp中,一个函数一个函数解析 aeCreateE 阅读全文
posted @ 2016-05-09 11:23 恋恋风辰 阅读(910) 评论(0) 推荐(0) 编辑
摘要: 之前梳理过redis main函数主体流程 大体是 initServerConfig() -> loadServerConfig() -> daemonize() -> initServer() -> aeSetBeforeSleepProc() ->aeMain() -> aeDeleteEven 阅读全文
posted @ 2016-05-06 12:17 恋恋风辰 阅读(2010) 评论(0) 推荐(0) 编辑
摘要: 基于之前讲述的简单循环服务器,做一个多个线程各自accept的服务器demo 由于多个线程各自accept,容易造成数据错误,需要在accept前后枷锁 先看下客户端 客户端创建socket,初始化服务器地址信息,然后进行连接 连接成功后发送信息给服务器,并且接受服务器回传的信息 服务器部分: 服务 阅读全文
posted @ 2016-05-05 11:10 恋恋风辰 阅读(4692) 评论(0) 推荐(0) 编辑
摘要: 客户端部分: 比较简单 创建socket 然后connect服务器,进行通讯 发送数据,并且接收数据,然后关闭 服务器部分: 服务器要做的是创建socket,初始化地址信息,并且绑定socket,然后进行监听 然互就是在循环里处理客户端连接上来的请求,并且接受信息,回发信息 循环服务器比较简单,而且 阅读全文
posted @ 2016-05-05 10:37 恋恋风辰 阅读(771) 评论(0) 推荐(0) 编辑
摘要: 想着把每一个基础的知识点搞清,趁着早晨凉快就先写一些总结 函数指针,基本结构是 函数返回类型(* 函数指针名字)(函数参数1,函数参数2,...); 这种指针用于指向一个函数的地址,可以通过函数指针回调同类型的不同函数,实现类似于事件回调机制的功能。 先写一个简单的测试程序 编译后看看有什么结果 p 阅读全文
posted @ 2016-05-03 08:13 恋恋风辰 阅读(199) 评论(0) 推荐(0) 编辑