`
androider
  • 浏览: 735971 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

AS3的socket的ProgressEvent.SOCKET_DATA

阅读更多
AS3.0中使用Socket接收数据我们必须使用ProgressEvent.SOCKET_DATA事件。这个事件在帮助文档中是这样描述的 ——在套接字接收到数据后调度。
而事实却并非如此,做过一次尝试,服务器发送了20000次数据而rogressEvent.SOCKET_DATA事件只产生了2000多次。
那么为什么说"服务器发送了20000次数据而rogressEvent.SOCKET_DATA事件只产生了2000多次",
因为flash socket使用的TCP/IP协议, 这个协议跟UDP不同,它不是以单个"包"的形式发送数据,它发送的是"流数据",所以即便你发来20000次数据(也就是你所想象的20000个包),TCP协议也是将它视作"流"发送.
换句话说,你的20000次数据,实际上只被分割成了2000多个"包"来发送,因此socket收到了2000多个包,,因此只产生了2000多次的事件.
在局域网内,或者本机127.0.0.1(如果是internet的话,因为网络延迟,没法严格测试),
将服务器发"包"频率降低,,比如:10ms,或者20ms发送一次, 再试试发送2万个包,看看产生几次事件?
分享到:
评论

相关推荐

    org.eclipse.swt.win32

    org.eclipse.swt.browser.ProgressEvent.class org.eclipse.swt.browser.ProgressListener.class org.eclipse.swt.browser.PromptAuth2.class org.eclipse.swt.browser.PromptDialog.class org.eclipse.swt.browser....

    CS6打开歌词同步频谱播放器源码

    loader.addEventListener(ProgressEvent.PROGRESS,progressHandler); } private function progressHandler(event:Event):void { loading.status=event.target.percent+"%" } private function ...

    一验证码识别的小程序源码

    ocr.ProgressEvent += new tessnet2.Tesseract.ProgressHandler(ocr_ProgressEvent); m_event = new ManualResetEvent(false); ocr.DoOCR(image, Rectangle.Empty); // Wait here it's finished m_event....

    Flash 整合Unity3D 教程

    unityContentLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onUnityContentLoaderProgress); unityContentLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, ...

    extension-WebView:在您的 openfl 游戏中显示网页

    OpenFLWeb 视图 在您的 openfl 游戏中显示网页。 ##用 在您的 haxelib 中添加 OpenFLWebView。... addEventlistener ( ProgressEvent . PROGRESS , onProgress ); mWebView . addEventlistener ( Event . COM

    ActionScript开发技术大全

    25.4.3宿主程序中的安全许可 556 25.4.4全屏模式安全许可 557 25.4.5本地连接安全许可 557 25.5交叉域安全示例 558 25.5.1创建测试的SWF 558 25.5.2跨脚本访问测试 562 25.5.3文本载入测试 563 25.6小结 564 第26章...

    简单解决新浪SAE无法上传文件的问题

    主要介绍了简单解决新浪SAE无法上传文件的问题,不知道到底是新浪的BUG还是我个人的问题,分享给大家吧。

    GoogleCloudMessage:如何实现谷歌云消息

    谷歌云消息链接到教程: 如何实现谷歌云消息

    jquery.upload5.js:jQuery插件实用地上传文件以使用XHR进行投放

    var onProgress = function ( percent , bytesUploaded , bytesTotal , progressEvent ) { } ; var onBeforeSend = function ( formData ) { return formData ; } ; //start upload $ . upload ( '/example/path...

    cordova-plugin-zip:Cordova应用程序的Zip插件

    cordova-plugin-zip 一个Cordova插件,用于在Android和iOS中解压缩文件。 安装 cordova plugin add cordova-plugin-zip ... var progressCallback = function(progressEvent) { $( "#progressbar

Global site tag (gtag.js) - Google Analytics