3月最后一天随笔

    今天是3月最后一天,理应写点东西,博客也不像以前那样更新了,原因很简单,没时间。今天下午把之前写的代码,从C语言改为了C++,都怪自己从开始做的时候没有面向对象的思想,今天改的时候,刚开始真是无从下手,不知道咋弄,其实自己服务器写的代码也不是很多,也就是用个epoll函数处理并发,然后是接收发送数据什么的,我把C语言写的函数看了几遍,又从新梳理了下流程。

    梳理的流程如下:从main函数开始

(1)建立socket

(2)设置服务器地址,清除端口占用

(3)绑定socketlisten socket

(4)设置每个进程允许打开的最大文件数

(5)Epoll方法,把socket加入epoll集合,在while(1)死循环里,用handmessage处理数据

    大致流程就是如此,理清了思路,就开始设计类了.

    首先设计了一个CNgodServer类,里面设计了4个成员函数:

(1)InitServer(),用来建立socket、设置服务器地址,清除端口占用和绑定socketlisten socket

(2)SetProcessMax(),用来设置每个进程允许打开的最大文件数

(3)EpollMethod(),用来把socket加入epoll集合,在这个里面调用了类HandMessage()

(4)Setnoblocking()用来设置句柄为非阻塞方式,用于在成员函数InitServer()EpollMethod()中调用。

    其次设计了类CHandMessage,里面设计了几个成员函数

(1)InitHandMessage(),用来处理数据的收发,里面用到recv()send()等函数;

(2)还有setup(),play(),release()等函数。

    然后再main()函数里,创建一个CNgodServer类的对象,然后调用方法就是了。

    今天本打算好好写篇博客,结果,下午改成C++后,还有些BUG,我一直在调试,本来代码整理了一个阶段了,结果,我要加const成员变量,使用构造函数初始化列表来初始化, 结果也没弄好,后来开始调试bug,因为一个小小的失误,调了好久,终于弄回了原来的状态。

    更悲剧的是linux环境的不熟悉,老是出来~,我删除的时候一不小心把CNgodServer.cpp文件删除了,找半天也找不回来,我这个后悔啊,想死的心都有了,弄了半天没弄好后,只好从新写,又弄了好久终于写好了,这次多了个心眼,做了个备份。把之前写好的都做了备份。

    3月份是结束了,4月份估计是最忙的时候,blog写的估计更少了,4月份毕业论文要弄,要的验机,交初稿,还得实习。哎!4月对于我来说注定是最忙的。

    不管怎么样,3月份结束了,哎!不写了,我也会去睡觉吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值