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

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




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




    2)test_netconnect_client.py




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


    4.jpg (37.3 KB, 下载次数: 17)
    下载附件  [url=]保存到相册[/url]

    [color=rgb(153, 153, 153) !important]半小时前 上传






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




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

  • 相关阅读:
    我的浏览器和常用扩展
    Win10安装.Net Framework4.7及更高版本
    压缩和解压工具bandizip
    Oracle trunc()函数的用法
    Oracle 中 decode 函数用法
    Js/Jquery获取iframe中的元素 在Iframe中获取父窗体的元素方法
    String literal is not properly closed by a double-quote eclipse
    linux 启动 Oracle 实例
    查询当前Oracle数据库的实例
    sqlplus 执行 sql 文件
  • 原文地址:https://www.cnblogs.com/123ing/p/3902718.html
Copyright © 2011-2022 走看看