UDX推模式与拉模式

来源:互联网 发布:中国战争电影 知乎 编辑:程序博客网 时间:2024/05/17 18:19

目前UDX主要是以推模式包装接口的。


用户不用关心数据从何而来,当有新的联接进来,或数据到来时,甚至数据被成功发送后,都会有事件主动上报,这种主动上报的方式,就是推模式。用户不用自己管理这些事件,由UDX底层来通知,好处是,效率较高,实时。

有时,应用程序以流式数据在应用程序之间传递时,有比较复杂的交互逻辑,这样推模式,显得有时处理起来不方便,虽然可以转化,但是应用程序控制起来,比较复杂,代码多。在传统的TCP流式处理数据处理方式时,这种交互就非常简单。因为可以指定长度去接收数据,让应用层处理相对容易。

本博文就是针对这种情况,指导开发人员,如何将现有的UDX的推模式,转化为传统的拉模式去处理数据。我针对这个应用方式,给出了一个包装的例程。源码代码可以在

http://www.goodudx.com/web/download/UdxSelectClient_src.rar

中下载。

主要思想是,由推模式将数据缓存,通过事件,fifo先进先出的队列,进行数据缓存,在需要的时候,可以recv出来,由事件结合Select方式。这样可以很快的,并无损失性能的去取数据,这样,在移植传统TCP的程序时,可以简单替换相关的Socket函授达到,把应用程序转化为UDX传输的模式。再结合UDX跨平台的优势,可以在不同平台间进行数据传输。


0 0