`

Flex AsyncToken 异步处理

阅读更多
包 mx.rpc
类 public dynamic class AsyncToken
继承 AsyncToken  EventDispatcher  Object

该类为异步 RPC 操作提供设置额外数据或标记级别数据的位置。它也允许为单独的调用附加 IResponder。可从 token 属性的 ResultEvent 和 FaultEvent 中引用 AsyncToken。

http://livedocs.adobe.com/flex/3_cn/langref/mx/rpc/AsyncToken.html

  在flex/AIR应用中使用多个外部调用,程序无法监听这些调用是否返回或何时返回结果(或者错误),也监听不到调用远程对象数据反回的顺序。你可能希望针对这些结果能有不同的处理。
  一种方式就是给每一个调用分配一个异步令牌(AsyncToken )来追踪这些调用。
 
  不要这样来进行远程调用:
 
myRO.myRemoteMethod();

  你应该这样:
 
var token:AsyncToken=myRO.myRemoteMethod();//确保导入了mx.rpc.AsyncToken


  现在就有了一个变量"token",代表这个单独的调用。你可以分配token自己的result和fault处理函数:
 
token.addResponder(myResponderClass);

  这里myResponderClass类实现了IResponder.
  实现IResponder简单的意味着定义了如下两个方法签名:
 
引用
public function result(data:Object):void
  public function fault(info:Object):void

  因此你可以对程序的远程调用在调用时设置result和fault处理函数,而不用把硬编码放到你的远程对象,HTTPService或者WebService标签里。这也恰好就是Cairngorm和其他微体系结构的运行方式。

  AsyncToken最后一点很酷的特性就是它是动态类。这意味着,当你进行远程调用时可以添加属性到token上,然后result/fault处理函数中读取这些属性。

   另外,在flex sdk3.4中有CallResponder,可以用CallResponder实例的token属性引用这个异步令牌。在flex sdk3.2中式没有这个类的,如果要用的话就只能自己写了,只要这个类继承自IResponder接口就可以了。

分享到:
评论

相关推荐

    flex 异步加载tree

    根据给定的信息,我们可以深入探讨Flex中的...综上所述,Flex中的异步加载Tree组件是一个非常实用的功能,可以帮助开发者在处理大量数据时提高应用性能。通过理解其工作原理和实现细节,可以更好地应用于实际项目中。

    Flex Tree 异步加载数据及分屏小工具

    在处理大量数据时,异步加载数据是一种优化性能的有效方法,因为它只在需要时加载数据,而不是一次性加载所有数据,从而减少了初始化时间并改善了用户体验。 在“Flex Tree 异步加载数据”中,主要涉及到的知识点有...

    flex4.6 air 异步操作sqlite数据库

    "flex4.6 air 异步操作sqlite数据库"的主题着重于如何在Flex 4.6和Adobe AIR环境中实现非阻塞的SQLite数据库操作。在传统的同步操作中,程序会等待数据库操作完成才会执行下一步,这可能导致用户界面冻结,尤其是在...

    ArcGIS Flex API 中的 Flex 技术-异步特征

    在Web GIS领域,尤其是使用ArcGIS Flex API进行开发时,异步处理能力是至关重要的。Flex技术本身支持异步调用,这使得它非常适合用于创建响应迅速且用户友好的Web GIS应用程序。本文将深入探讨ArcGIS Flex API中的...

    3IM-govern.rar_flex_异步电机调速_弱磁_弱磁调速_调速

    "3IM-govern.rar_flex_异步电机调速_弱磁_弱磁调速_调速"这一压缩包文件包含了关于三相异步电机调速技术的深入探讨,特别是弱磁调速方法。这里我们将详细讲解三相异步电机的调速原理,以及弱磁调速在其中所扮演的...

    自己写的 flex 的异步树和分页grid组件。

    解析数据用了flex的JSON包。 这段代码放在要显示树的canvas下 rootLable="根节点" //树的根节点名 destination="flexService" //remoteObject 的destination remoteServer="true" id="asyntree1" ...

    flex与服务端通信的as封装源码(同步、异步两种方式)

    在Flex开发中,与服务端通信是至关重要的环节。这篇资料提供了一套AS(ActionScript)源码,用于实现Flex客户端与...同时,也可以学习到如何处理同步和异步通信,以及如何在Flex中有效地利用HTTPService进行数据交换。

    Flex图形化处理源码

    Flex图形化处理源码是一种基于Adobe Flex框架的编程实践,主要应用于创建动态的、交互式的Web应用程序,尤其在数据可视化和导航系统方面表现突出。Flex3是这一系列框架的一个版本,它提供了强大的富互联网应用(RIA...

    flex 动态树,异步树

    动态树和异步树是Flex在构建用户界面时经常会用到的数据结构,特别是在处理大量数据时,以提高性能和用户体验。以下是对这两个概念的详细解释: 1. Flex中的动态树(Dynamic Tree): 动态树是一种可以实时更新和...

    Java_Flex,Java_Flex,Java_Flex

    - 异步处理:使用异步调用以避免阻塞UI,提升用户体验。 - 错误处理:良好的错误处理机制能及时发现并解决可能出现的问题。 - 性能优化:监控和优化数据传输,减少不必要的网络延迟。 总的来说,Java_Flex的集成为...

    flex 面试题flex

    - 对于处理速度慢,可以优化异步通信,提升用户体验,例如通过进度条显示或异步加载。 8. Flash与Flex的协同开发: 若需利用Flex SDK,可以建立Flex工程,将Flash作为UI皮肤。若仅需要编码便利,可创建AS工程,...

    Flex万年历记事本_flex源码

    1. **MXML与ActionScript**:Flex应用主要由两种语言编写,MXML用于定义组件结构和界面布局,而ActionScript则处理逻辑和业务代码。在"万年历记事本"的源码中,MXML文件可能包含了日历视图和记事本界面的定义,而...

    flex 等待界面显示

    Flex支持异步编程模型,如使用`AsyncToken`对象和`callLater()`方法,可以避免UI线程阻塞,确保等待界面的平滑显示。 5. **优化用户体验**: - **延迟显示**:不必要一开始就显示等待界面,只有当后台任务执行...

    flex学习笔记 flex学习总结 flex学习教程

    8. **Flex应用程序生命周期**:理解Flex应用从启动到关闭的整个过程,包括初始化、布局、渲染、事件处理等阶段,有助于优化性能和解决运行时问题。 9. **Flex性能优化**:学习如何通过优化组件使用、减少网络请求、...

    flex flex和 java交互

    4. **搭建Java服务**:使用Java Servlet或Spring MVC等框架创建一个处理Flex请求的服务。这个服务会接收Flex发送的AMF请求,处理业务逻辑,然后返回结果。 5. **使用 BlazeDS 或 LiveCycle Data Services**:这两个...

    FLEX网站源码 FLEX网站源码 FLEX网站源码

    6. **事件处理**:Flex使用事件驱动的编程模型,用户交互或其他系统事件会触发相应的事件处理函数,增强了应用的响应性和交互性。 7. **Flex与后端通信**:Flex应用可以与各种后端服务(如Java、PHP、ASP.NET等)...

    Flex+Java Servlet处理文件上传

    Flex+Java Servlet处理文件上传 关于上传文件

    记事万年历flex源码

    综上所述,"记事万年历flex源码"是一个展示Flex技术在构建富互联网应用中的实际应用的例子,它融合了UI设计、事件处理、数据绑定和定制组件等多方面的知识。对于想要提升自己在Flex开发技能的开发者来说,这是一个...

    Flex Flex Flex Flex

    Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex ...

    flex 与java后台整合 PPT

    接口设计应考虑到Flex的异步调用特性,通常使用Java的Servlet或Spring MVC来处理请求。 4. **Flex客户端调用**: 在Flex端,使用RemoteObject组件来调用Java后端的服务。配置RemoteObject时,需要指定服务器端接口...

Global site tag (gtag.js) - Google Analytics