地址 https://github.com/msng4t/TNF-mutithread
地址 https://github.com/msng4t/TNF
目的:想要寻找一套性能,可读性相对较好的Socket管理代码,用在即将开始的CrossPlatformSDK中
编译环境 CentOS
遇到问题
1 ASynchClient.cpp 中使用的AsynchClient.h ,头文件名写错了,应该是ASynchClient.h
2 SockAddr.h,SockAddr.cpp需要从TNF那个源里拷贝过来,原有的SockAddr.cpp 应改为sockaddr.cpp,和原有的小写文件对应.
3 Configuration.c 删除,和Configuration.cpp重了.
4 Lua配置,一开始使用的CentOS没有lua安装,需要自己安装,具体过程请放狗.(oh,shit,狗不行了,得用bing)
5 编译完成,还是有警告,但可以运行,下一步进行代码分析,重新拾起咱丢了很久的C++.
6 g++ -o minia ASynchClient.cpp Connector.cpp Exception.cpp HttpHandler.cpp Memblock.cpp ProcessCycle.cpp SockAddr.cpp UpHandler.cpp Channel.cpp Cycle.cpp Filter.cpp IoAcceptor.cpp MessageTable.cpp Queue.cpp SocketOpt.cpp mina_rbtree.cpp Config.cpp DaemonService.cpp FilterChain.cpp IoEvent.cpp OsAction.cpp SessionManager.cpp Synch.cpp sockaddr.cpp Configuration.cpp EventDo.cpp GroupManager.cpp IoService.cpp Poll.cpp SharedMemory.cpp Thread.cpp Connection.cpp EventPosted.cpp Http.cpp Log.cpp Process.cpp SharedMutex.cpp Timer.cpp main.c liblua.a -I./ -I/tmp/tnfm/lua-5.1.4/include -L./ -lrt -lpthread
目标:
1 内容分析完毕后,替换epoll方式为select或者其他.(宿主机iOS+Mac)
2 集成到已有系统中,替换现有的C版本的Socket管理,一团乱麻.