zoukankan      html  css  js  c++  java
  • Firefly官方教程之Netconnect使用文档

    1、distributed说明
    该模块包含了服务端与客户端通信的一些处理方法,包括发送数据的封装,协议头的封装,tcp通信时进行分包,处理粘包问题。
    2、结构解析

    <ignore_js_op>



    LiberateFactory,协议工厂,所有连接的本质,服务端与客户端通信的这一行为的形象化,它包含三个部分:
    1)LiberateProtocol,通信协议类,连接建立、断开后的操作,发送数据等都由它来控制
    2)DataPackProtoc,数据包协议的定义,所有的数据解析都要遵守它定制的规则
    3)ConnectionManager,连接管理器,所有的连接都受他的指挥,可以在它里面找到想要找的连接,进行操作
       Connection,与客户端的一条连接对象,通过他可以与客户端进行通信,主动断开连接,主动推送消息等。
    3、使用示例
    1)test_netconnect_server.py

    <ignore_js_op>



    2)test_netconnect_client.py

    <ignore_js_op>



    3)上面分别为server(服务端)和client(客户端)的例子,运行test_netconnect_server.py文件,你会看到下图,说明服务器已经启动,并开始监听1000这个端口。

    <ignore_js_op>



    5秒内运行test_netconnect_client.py文件,你会在server这边看到下图,

    <ignore_js_op>



    4)解释下,server运行后,client运行,client会建立两个线程,每隔线程都给server发送一条消息,会调用server的指令号为111的方法(即echo_111这个函数),打印出“hello”。Server会在运行后的5秒后断开连接id为0的那条连接,断开连接时会执行doConnectionLost方法。

  • 相关阅读:
    【Spring】注解的循环依赖问题
    【网络】计算机网络自顶向下读书笔记
    【JUC】并发编程的艺术笔记
    【JUC】多线程手撕代码面试题
    【操作系统】王道操作系统全盘汇总
    【Spring】IoC源码分析以及实现
    【Spring】用例子来初次理解IoC
    拼音工具类
    chr(10)与chr(13)的区别
    List 集合转String 逗号拼接
  • 原文地址:https://www.cnblogs.com/9miaoshetuan/p/3845176.html
Copyright © 2011-2022 走看看