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

网站建设需要资料微信公众平台申请注册入口

网站建设需要资料,微信公众平台申请注册入口,html界面设计工具,宁波有几个区不同主机或者相同主机中不同进程之间可以借助网络通信相互进行数据交互#xff0c;网络通信实现了进程之间的通信。比如两个进程之间需要借助UDP进行单播通信#xff0c;则双方需要知道对方的IP和端口#xff0c;假设两者不在同一主机中#xff0c;如下示意图#xff1a; …不同主机或者相同主机中不同进程之间可以借助网络通信相互进行数据交互网络通信实现了进程之间的通信。比如两个进程之间需要借助UDP进行单播通信则双方需要知道对方的IP和端口假设两者不在同一主机中如下示意图 主机1中的进程A想要与主机2中的进程B进行通信则首先他们之间需要知道对方所在主机的IP地质以及对方所绑定的端口好比A和B住在同一个小区同一个局域网内A派人给B送信则需要制度B所住的楼栋主机IP地址以及B的门牌号绑定的IP地址。 不同主机之间的不同进程可以借助网络套接字进行通信同主机内也是如此关于进程间通信我之前也写过对应博客 linux消息队列的简单使用_linux消息队列发送消息为0-CSDN博客 QLocalSocket、QLocalServer实现本地进程通信简单实例_qt vs2015 进程间通信-CSDN博客 这里使用TCP或者UDP进行同一主机内通信也是没有问题的比如同主机内不同进程使用UDP套接字进行通信两者可以根据都绑定本机IP127.0.0.1,然后各自根据配置文件绑定不同端口最后通过QUdpSocket进行数据交互。使用QTcp也是类似只不过各进程需要指定对应的服务器和客户端本地进程间通信如果自己实现我还是推进使用QUdpSocket,因为UDP面向报文无需建立链接除了单播还可以广播、组播而且因为处于同一主机所以基本不用考虑整个报文丢失的问题。第三方库可以采用ZMQ进行进程间通信 第三方库ZeroMQ也称为ZMQ是一个流行的消息传递库它提供了简单而高效的消息传递模式用于在应用程序之间进行通信。ZeroMQZMQ可以基于多种传输协议进行通信包括TCP、UDP、in-process进程内通信等。它提供了不同的传输协议来满足不同的通信需求。 ZMQ下载 The ZeroMQ project · GitHub 下载之后直接解压 ZMQ编译 环境Windows,Qt515.2,VS2022 使用cmake打开 完成之后打开对应生成的目录 使用VS打开对应工程 编译对应Debug版和release版的库 等待编译完成 同样方法编译生成Debug版 生成动态库对应位置 动态导入库位置 在工程引入文件结构 ZMQ通信主要有REP/REQ、PUB/SUB、PUSH/PULL三种类型本文主要介绍第二种PUB/SUB即发布/订阅模式 。 工程文件中引入ZMQ头文件以及库文件 #引入libzmq头文件和库 INCLUDEPATH $PWD/zmq/includewin32 {LIBS -L$$PWD/zmq/libCONFIG(release, debug|release) {LIBS -llibzmq-v143-mt-4_3_6}CONFIG(debug, debug|release) {LIBS -llibzmq-v143-mt-gd-4_3_6} } 发布类ZmqPublisher 头文件 #ifndef ZMQPUBLISHER_H #define ZMQPUBLISHER_H#include QObjectclass ZmqPublisher : public QObject {Q_OBJECT public:explicit ZmqPublisher(QObject *parent nullptr);~ZmqPublisher();bool bind(quint16 port);signals:public slots:void publishData(const QByteArray data);private:void *context;void *socket; };#endif // ZMQPUBLISHER_H源文件 #include zmqpublisher.h #include zmq/include/zmq.h #include QDebugZmqPublisher::ZmqPublisher(QObject *parent) : QObject{parent} {context zmq_ctx_new();socket zmq_socket(context, ZMQ_PUB); }ZmqPublisher::~ZmqPublisher() {zmq_close(socket);zmq_ctx_destroy(context); }bool ZmqPublisher::bind(quint16 port) {QString arg QString(tcp://*:%1).arg(port);int rc zmq_bind(socket, arg.toUtf8().constData());return rc 0; }void ZmqPublisher::publishData(const QByteArray data) {zmq_send(socket, data, data.size(), 0); }订阅类ZmqSubscriber 头文件 #ifndef ZMQSUBSCRIBER_H #define ZMQSUBSCRIBER_H#include QObjectclass ZmqSubscriber : public QObject {Q_OBJECT public:explicit ZmqSubscriber(QObject *parent nullptr);~ZmqSubscriber();bool connectTo(quint16 port);public slots:void procesMessage();signals:void dataReceived(const QByteArray data);private:void *context;void *socket; };#endif // ZMQSUBSCRIBER_H源文件 #include zmqsubscriber.h #include zmq/include/zmq.hZmqSubscriber::ZmqSubscriber(QObject *parent) : QObject{parent} {context zmq_ctx_new();socket zmq_socket(context, ZMQ_SUB);zmq_setsockopt(socket, ZMQ_SUBSCRIBE, , 0); }ZmqSubscriber::~ZmqSubscriber() {zmq_close(socket);zmq_ctx_destroy(context); }bool ZmqSubscriber::connectTo(quint16 port) {QString arg QString(tcp://localhost:%1).arg(port);int rc zmq_connect(socket, arg.toUtf8().constData());return rc 0; }void ZmqSubscriber::procesMessage() {while (true) {zmq_msg_t message;zmq_msg_init(message);zmq_recvmsg(socket, message, 0);QByteArray data(static_castconst char *(zmq_msg_data(message)),zmq_msg_size(message));emit dataReceived(data);zmq_msg_close(message);} }调用示例 新建对应发布类以及线程将发布类移入线程 QThread *m_PubThread;QThread *m_SubThread;ZmqPublisher *m_Publisher;ZmqSubscriber *m_Subscriber; 使用线程调用 m_PubThread new QThread;m_SubThread new QThread;m_Publisher new ZmqPublisher;m_Subscriber new ZmqSubscriber;m_Publisher-moveToThread(m_PubThread);m_Subscriber-moveToThread(m_SubThread);connect(this, MainWindow::publishData, m_Publisher,ZmqPublisher::publishData);connect(m_Subscriber, ZmqSubscriber::dataReceived,[](const QByteArray data) {//TODO 处理zmq接收数据});m_PubThread-start();m_SubThread-start();QMetaObject::invokeMethod(m_Subscriber, ZmqSubscriber::procesMessage); 运行效果
http://www.hkea.cn/news/14393994/

相关文章:

  • 网络做网站如何盈利做区块链好的网站
  • 为什么浙江建设厅网站建筑工程招聘最新信息平台
  • 滨海建设局官方网站网页设计与制作实训报告书
  • 网站留言功能安全网站建设报价清单
  • wordpress的文章分类优化网站
  • 做母婴的网站有哪些服装行业网站开发
  • 网站开发 360浏览器怎么在网站上添加广告代码
  • 楚雄市建设规划批前公示在那个网站微信引流用什么软件好用
  • 济宁网站运营策略邢台网上办事大厅
  • 做曖网站微商免费推广平台有哪些
  • 朝阳市做网站北京网站建设价格便宜
  • 成都专业做网站公司哪家好qq空间登录入口
  • 网站开发代码归属dw怎么把设计网页显示出来
  • 淘宝做网站价格11月达感染高峰
  • 做阿里巴巴网站图片尺寸网站建设的用户环境
  • 外国网站备案天河网站建设
  • 济宁做网站的公司一个网站用两个域名
  • 免费minecraft服务器谷歌关键词排名优化
  • 无锡优化网站费用网站开发有什么软件
  • 网站建设 图标怎么提高网站的流量
  • 远安网站建设企业网站html模板下载
  • 网站你应该明白什么意思吗360度全景地图
  • 德州网站开发怎么做各个地图网站的认证
  • 网络推广和网站推广承揽合同和建设工程合同的区别
  • 杭州网站seo2023还能上的网站
  • 合肥建公司网站cho菌主题wordpress
  • 给个龙做罗拉的网站网络设计的原则有哪些
  • 兰州建设局网站工业设计在线
  • 企业网站项目的流程连云港网站seo
  • 廊坊文安建设局网站定制网站哪个好