- Notifications
You must be signed in to change notification settings - Fork1
jwcpp/jwNet
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
一个跨平台事件网络库,支持epoll/iocp ipv4/ipv6。化繁为简,极度精简其接口。和著名的ASIO保持一样的Proactor设计风格,优雅大气,揣摩chriskohlhoff大师的设计理念。
测试通过:vs2019 & CentOS7
#include"Network.h"usingnamespacenet;#defineBUFFLEN1024classConnect :publicIoSocket{protected:virtualvoidonConnect(int err) {}virtualvoidonWrite(int bytes,int err) {}virtualvoidonRead(int bytes,int err){if (bytes <=0 || err) {return;}printf("recv msg: %s\n", readbuff);postRead();}public:voidpostRead(){//Request to read dataIoSocket::read(readbuff, BUFFLEN);}private:char readbuff[BUFFLEN];};classIServer :publicAccept{public:virtualvoidonAccept(IoSockptr& sptr,int err) {if (err){accept(sptr);}else {((Connect*)sptr.get())->postRead();accept(std::make_shared<Connect>());}}};intmain(){NetLoop loop;loop.init();IServer accept;accept.listen(&loop,"127.0.0.1",6601);accept.accept(std::make_shared<Connect>());while (1) {loop.run(5);}return0;}
更多项目:jwEngine
About
跨平台(Iocp/Epoll)Tcp网络库
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published