六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 84|回复: 0

Flex与.NET互操作(十二):FluorineFx.Net的及时通信应用(Remote Shared Objects)(三)

[复制链接]

升级  55.4%

243

主题

243

主题

243

主题

进士

Rank: 4

积分
777
 楼主| 发表于 2013-2-5 09:05:50 | 显示全部楼层 |阅读模式
远程共享对象(Remote Shared Objects)可以用来跟踪、存储、共享以及做多客户端的数据同步操作。只要共享对象上的数据发生了改变,将会把最新数据同步到所有连接到该共享对象的应用程序客户端。FluorineFx所提供的远程共享对象(Remote Shared Objects)和FMS的共享对象的功能是一样,对于熟悉FMS开发的朋友来说,学习FluorineFx的远程共享对象是非常简单的。
共享对象可以在服务器端创建,也可以在客户端创建。在客户端创建共享对象的方法和使用FMS开发是一样的,创建一个NetConnection对象,通过该对象的connect()方法连接到服务器,然后通过SharedObject.getRemote()方法就可以在客户端创建一个远程共享对象。如下实例代码:
<div class="cnblogs_code"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->privatefunctionconnectionServer():void
{
varnc:NetConnection
=newNetConnection();
nc.connect(
"rtmp://localhost:1617/SOAPP","username","password")
nc.addEventListener(NetStatusEvent.NET_STATUS,onStatusHandler);
nc.client
=this;
}

privatefunctiononStatusHandler(event:NetStatusEvent):void
{
if(event.info.code=="NetConnectin.Connect.Success")
{
createSharedObject();
}
}

privatefunctioncreateSharedObject():void
{
varso:SharedObject
=SharedObject.getRemote("OnLineUsers",nc.uri,false);
so.addEventListener(SyncEvent.SYNC,onSyncHandler);
so.connect(
this.nc);
so.client
=this;
}

privatefunctiononSyncHandler(event:SyncEvent):void
{
//..doother
}
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表