zoukankan      html  css  js  c++  java
  • DIOCP之数据接收事件

    一、不引用编码器与解码器的情况下(ECHO的DEMO)

       类TIOCPtcpclient,接收服务器的数据事件:OnRecvBuffer

       类TDiocpTcpServer,接收客户端数据事件:OnRecvBuffer

       TIocpTcpServer

        property OnDataReceived: TOnDataReceived read FOnDataReceived write  FOnDataReceived;

    二、引用编码器与解码器的情况下

      编码器与解码器对接收数据进行了一次封装,在OnRecvBuffer中后,先对数据进行缓存存放,然后调用解码器进行解码数据, 如果解码成功会用IocpTask/或者QWokers把数据对象投递到逻辑线程进行处理<常说的通信线程和工作线程分离的模式>。

      在这个函数下面可以不用去管粘包问题。接受到的是你客户端发送过来的对象。 

      TIOCPCoderClientContext

      procedure dataReceived(const pvDataObject:TObject); override;

       ChatDemo下:接收数据在TIocpRemoteContext事件OnRecvObject(接收对象)

  • 相关阅读:
    【2020-11-16】就是自己的松散意识在作怪
    JQuery 事件
    JQuery DOM 有关代码练习
    JQuery中的DOM操作
    主题简介 ASP .NET
    JQuery 选择器 *很重要 多记
    JQuery 基础
    Ajax 获取数据代码
    Ajax 介绍
    JavaScript 基础二
  • 原文地址:https://www.cnblogs.com/diocp/p/5848220.html
Copyright © 2011-2022 走看看