当前位置: 首页 > news >正文

怎么做招投标网站郑州网站seo服务

怎么做招投标网站,郑州网站seo服务,用织梦做企业网站,wordpress后台修改前段1.muduo库简介 muduo是由Google大佬陈硕开发,是一个基于非阻塞IO和事件驱动的现代C网络库,原生支持one loop per thread这种IO模型,该库只支持Linux系统,网上大佬对其褒贬不一,作为小白用来学习就无可厚非了。 git仓库…

1.muduo库简介

muduo是由Google大佬陈硕开发,是一个基于非阻塞IO和事件驱动的现代C++网络库,原生支持one loop per thread这种IO模型,该库只支持Linux系统,网上大佬对其褒贬不一,作为小白用来学习就无可厚非了。
git仓库:https://github.com/chenshuo/muduo

2.准备事项

  1. muduo采用Cmake为build system,安装如下:
$ sudo apt-get install cmake
  1. muduo依赖于Boost,安装如下:
$ sudo apt-get install libboost-dev libboost-test-dev
  1. curl、c-ares DNS、Google Protobuf这3个库非必须安装,如果安装了cmake会多编译一些示例,安装如下:
$ sudo apt-get install libcur14-openssl-dev libc-ares-dev
$ sudo apt-get install protobuf-compiler libprotobuf-dev

3.编译

  1. 下载muduo-master解压后,执行编译脚本
// 切换路径
$ cd muduo-master/
//编译muduo库,默认release版,生成build文件夹
$ ./build.sh -j2
// 将muduo头文件和库文件安装到release-install目录下的include和lib文件夹
$ ./build.sh install
// 将头文件拷贝到系统路径
$ cd build/release-install-cpp11/include/
$ cp -r muduo/ /usr/local/include/
// 将库文件拷贝到系统路径
$ cd build/release-install-cpp11/lib/
$ cp * /usr/local/lib/

4.测试demo

  1. EchoServer.h
#include <muduo/net/TcpServer.h>
#include <muduo/base/Logging.h>class EchoServer
{public:EchoServer(muduo::net::EventLoop* loop,const muduo::net::InetAddress& listenAddr);void start();private:void onConnection(const muduo::net::TcpConnectionPtr& conn);void onMessage(const muduo::net::TcpConnectionPtr& conn,muduo::net::Buffer* buf,muduo::Timestamp time);muduo::net::EventLoop* loop_;muduo::net::TcpServer server_;};
  1. EchoServer.cpp
#include "EchoServer.h"
#include <boost/bind/bind.hpp>using namespace boost::placeholders;EchoServer::EchoServer(muduo::net::EventLoop* loop,const muduo::net::InetAddress& listenAddr):loop_(loop),server_(loop, listenAddr, "EchoServer"){server_.setConnectionCallback(boost::bind(&EchoServer::onConnection, this, _1));server_.setMessageCallback(boost::bind(&EchoServer::onMessage,  this, _1, _2, _3));}void EchoServer::onConnection(const muduo::net::TcpConnectionPtr& conn)
{LOG_INFO << "EchoServer - " << conn->peerAddress().toIpPort() << " -> "<< conn->localAddress().toIpPort() << " is "<< (conn->connected()? "UP" : "DOWN");
}void EchoServer::onMessage(const muduo::net::TcpConnectionPtr& conn,muduo::net::Buffer* buf,muduo::Timestamp time)
{muduo::string msg(buf->retrieveAllAsString());LOG_INFO << conn->name() << "echo - " << msg.size() << " bytes, "<< " data received at " << time.toString();conn->send(msg);
}void EchoServer::start()
{server_.start();
}
  1. test.cpp
#include "EchoServer.h"#include <muduo/net/EventLoop.h>
#include <muduo/base/Logging.h>using namespace muduo;
using namespace muduo::net;int main()
{LOG_INFO << "pid = "<< getpid();muduo::net::EventLoop loop;muduo::net::InetAddress listenAddr(2007);EchoServer server(&loop,listenAddr);server.start();loop.loop();
}
  1. 在编译的时候出现好多未定义的错误,最后排查是因为编译的时候链接库的顺序有要求,编译如下:
$ g++ EchoServer.cpp test.cpp -o test -lmuduo_base -lmuduo_net -lpthread

错误消息如下:
在这里插入图片描述

5.测试

执行test.out程序启动服务端,再通过终端模拟客户端建立连接,在客户端发送消息会同时接收服务端回复的相同消息。
在这里插入图片描述

http://www.tj-hxxt.cn/news/75133.html

相关文章:

  • 南宁广告网页设计人才招聘网络营销seo是什么意思
  • 免费网站收录网站推广杭州网站排名seo
  • 企业查天眼查在线超级seo助手
  • 高水平的网站建设嘉兴网站建设制作
  • shopify可以用来做B2B网站吗seo咨询常德
  • 最新仿uehtml网站源码各大网站提交入口网址
  • 黑龙江省城乡建设厅网站平台推广是做什么的
  • 湖南企业app专业北京seo公司
  • 我做百度_上面有手机网站的_为什么还要做手机网站百度快快速排名
  • 做网站买空间多少钱保定seo网站推广
  • 网站制作找私人多少钱优化大师官方网站
  • 专门做游戏交易的网站营销网络是啥意思
  • 为什么中国人都跑去泰国做网站赌博百度引流推广怎么做
  • 为什么做美妆网站企业推广app
  • 沧州网站建设的集成商站长号
  • 昆山网站建设优化方案官网
  • 给个能看的网站2021年年度关键词
  • 站长之家字体网络销售怎么样
  • 网站开发学什么语言最好外链发布工具
  • 软件项目管理课程设计苏州关键词优化搜索排名
  • 做优秀企业网站百度竞价推广自己可以做吗
  • 南宁关键词网站排名百度知道
  • 化工行业网站模板短链接生成网址
  • 自己做视频直播网站培训心得体会范文
  • 做名片素材网站网站免费推广软件
  • 网站的优化用什么软件丹东网站seo
  • 哪家网站做推广好百度导航
  • 湖北省城乡建设厅网站首页佛山网站优化
  • php动态网站开发课后题答案全球外贸采购网
  • 整站优化全网营销个人如何建立免费网站