摘要: 本节内容和前节事件管理封装是息息相关的,本节内容主要包含的代码在connection{.h, .cc}中。 这里面最主要的有两个类:connection类和tcpsconn类,connetion类主要服务于单个套接字,包括套接字上的数据读取写入等,而tcpsconn类则是服务于套接字集合,如接收连接 阅读全文
posted @ 2016-08-18 23:26 fwensen 阅读(448) 评论(0) 推荐(0) 编辑
摘要: 这部分的内容主要包括Epoll/select的封装,在封装好相应函数后,再使用一个类来管理相应事件,实现的文件为pollmgr.{h, cc}。 事件函数封装 可看到pollmgr.h文件下定一个了一个虚基类aio_mgr 1 class aio_mgr { 2 public: 3 virtual 阅读全文
posted @ 2016-08-17 23:08 fwensen 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 主要内容 在正式讲解线程池实现之前,先讲解两个有用的工具类: ScopedLock fifo队列 ScopedLock: ScopedLock是局域锁的实现(我也不知道叫什么,姑且这么说吧),它使用了C++中RAII(Resource acquisition is initialization资源获 阅读全文
posted @ 2016-08-16 03:25 fwensen 阅读(449) 评论(0) 推荐(0) 编辑
摘要: 课程主页 课程介绍:本课程会在给出的源码的基础上要求完成8个lab Lab overviewLab 1 - Lock ServerLab 2 - Basic File ServerLab 3 - MKDIR, UNLINK, and LockingLab 4 - Caching Lock Serve 阅读全文
posted @ 2016-08-16 00:41 fwensen 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 按照Leetcode的Tag来刷题,从easy到hard刷题 关于如何让Leetcode按难易程度排序,可按以下步骤:1. 进入Leetcode后,点击code2.点击code后,可查看所有题目,可看到右下角有Tag标志,选择想要刷的Tag即可3. 点击Tag后,可看到该Tag下所... 阅读全文
posted @ 2016-05-27 14:31 fwensen 阅读(1058) 评论(0) 推荐(0) 编辑
摘要: 自1994年万维网出现后,互联网上的网页数量就呈指数级生长,到目前为止,短短二十余年,互联网上就有成百上千亿网页。如何在这海量的网页中搜索下载具有对特定场景有价值的网页?使用什么样的策略能保证网页不会出现重复?如何保证爬虫程序的高并发爬取?如何在网页中提取关键点等等问题,这是本篇博客重点描述的内... 阅读全文
posted @ 2016-05-26 01:01 fwensen 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 一:CString 和 *char 的转换: 1:CString -> *char 1)CString转化为*char可以使用CString中的GetBuffer()函数,具体如下:CString string1 = _T("string");char *str = string1.GetBu... 阅读全文
posted @ 2014-04-21 23:57 fwensen 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 前面装X服务器一直装不成功,每个步骤都按hand book上的进行,编译完成后,重启就是启动不了X服务器,最终才知道由于我是用的是开源显卡nvidia,换成集成显卡inter后X启动成功,顺便说句,在装KDE or Xfce or Gnome 时出现安装包冲突,此时有两种方案解决。1:更新整个系统 。 2:使用package.mask等文件。 阅读全文
posted @ 2013-08-06 23:29 fwensen 阅读(223) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std;int Find_Max_Crossing_SubAr(int A[], int low, int mid, int high,int *max_left,int *max_right){ int left_sum = -10000000... 阅读全文
posted @ 2013-08-06 22:27 fwensen 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 在编译完内核,配置好网络,配置好fstab文件等等,最后一个至关重要的文件要属grub文件了,该文件的配置成功才最终决定gentoo是否成功装上,首先当然是emerge grub了,现在就可以配置/boot/grub/grub.conf文件了,首先打开该文件vim /bootgrub/grub.conf于是可以开始配置:default 0 #该行用于默认启动是第一个系统还是其它系统,0代表第一个,1代表第二个……timeout 10 #启动默认系统时间titile Gentoo Linux #第一个系统名root (hd0,0) #若该系统的/boot文件在sda1上,若装在... 阅读全文
posted @ 2013-08-06 01:56 fwensen 阅读(414) 评论(0) 推荐(0) 编辑

Hello welcome to my blog, i am a uestcer!