- 博客(11)
- 收藏
- 关注
转载 网络编程入门11
用了这几天的时间,把muduo这个库算是看完了,看完了之后回过头来发现自己的记录里感觉啥都没写。写一下服务器端启动的流程吧服务器端main函数里定义一个EvetnLoop,属于主事件循环,主事件循环里有一个轮训器,可以向其中注册自己关心的文件描述符,在每次轮询时可以进行查找,创建TcpServer, TcpServer里有有一个接收器Accepter, 接收区里关注一个socketid...
2019-08-10 13:39:00 102
转载 网络编程入门10
TcpConnection.hvoid muduo::net::defaultConnectionCallback(const TcpConnectionPtr& conn){ LOG_TRACE << conn->localAddress().toIpPort() << " -> " << conn...
2019-08-09 11:57:00 150
转载 网络编程入门09
EventLoop.heventfd 是 Linux 的一个系统调用,创建一个文件描述符用于事件通知,自 Linux 2.6.22 以后开始支持。`#include <sys/eventfd.h>``int eventfd(unsigned int initval, int flags);`eventfd() 创建一个 eventfd 对象,可以由用户空间应用程序实现...
2019-08-08 19:12:00 129
转载 网络编程入门08
net模块Callbacks.htemplate<typename T>inline T* get_pointer(const std::shared_ptr<T>& ptr) //返回shard_ptr的裸指针,感觉意义不大的一个函数{ return ptr.get();}template<typename T>inl...
2019-08-08 11:45:00 155
转载 网络编程入门07
LogStream.hconst int kSmallBuffer = 4000;const int kLargeBuffer = 4000*1000;temlpate <int SIZE>class FixedBuffer{private: void (*cookie_)(); char data_[SIZE]; char* cur_;public:...
2019-08-08 10:35:00 124
转载 网络编程入门06
muduo base模块中关于线程大部分都看完了,看看关键计时功能的实现把Date.hstruct tm {int tm_sec; /* 秒 – 取值区间为[0,59] /int tm_min; / 分 - 取值区间为[0,59] /int tm_hour; / 时 - 取值区间为[0,23] /int tm_mday; / 一个月中的日期 - 取值区间为[1,31] /...
2019-08-07 17:45:00 97
转载 网络编程入门05
这几天因为工作需求,学习了多线程编程,用线程池写了一个小工具,对于网络库的回调,多线程理解加深了一层理解。发觉,利用理解多线程,理解这些小的组件,也非常重要。被工作打断,直接阅读net模块有点难度,打算从base模块阅读起。class noncopyable{} //把赋值构造和赋值操作直接删除,默认构造和析构使用默认操作。class copyable{} //把构造和析构设...
2019-08-06 00:23:00 166
转载 网络编程入门04
Poll函数#include <poll.h> int poll(struct pollfd fd[], nfds_t nfds, int timeout); 参数: 1)第一个参数:一个结构数组,struct pollfd结构如下: struct pollfd{ int fd; //文件描述符 short ...
2019-07-26 18:25:00 148
转载 网络编程入门03
Socket.h Socket.ccclass Socket实际上没有写什么东西,几乎都是在调用moduo::net::socket下的一些函数出现了两个新的类 tcp_info 与 InetAddress#define TCPI_OPT_TIMESTAMPS 1#define TCPI_OPT_SACK 2#define TCPI_OPT_WSCALE 4#define T...
2019-07-26 16:34:00 203
转载 网络编程入门02
在接触网络编程是,网上,基本的socket样例过于简单,公司的网络库匹配性太强,跟业务耦合比较大。所以阅读陈硕的muduo网络库.namespace muduo::net::socketstypedef struct sockaddr SA;在socketAPI中:int connect(int sock, struct sockaddr *serv_addr, socklen_...
2019-07-26 13:39:00 96
转载 网络编程入门01
实现网络库的一些基石一些基本的变量定义sa_family_t unsigned integer typesocklen_t an integer type of width of at least 32 bitsin_addr_t uint32_tIPv4: struct sockaddr_in, 16个字节struct sockaddr_in { sa_famil...
2019-07-26 12:30:00 90
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人