SharedObejct与ObjectEncoding

卡在一个问题上:
FMS服务端的main.asc如下:
application.onAppStart = function()
{    
    trace("App Start...");
    var so = SharedObject.get("whiteboard", true);
    var obj = so.getProperty("op");
    trace(obj.action);
}
当重加载服务或者客户端对SharedObject进行写操作时,FMSCore.exe的CPU占用率会升至60%~70%,并且只有在getProperty时才会出现此现象。
在网上查了下,没有查到。研究了一整天,无果。只好作罢,休息。
后来发现在main.asc文件中建立与客户端相同格式的SharedObejct对象后读取无任何问题。忽然想到这可能是编码的原因。
于是指定了客户端的编码:ObjectEncoding.AMF0
再次测试,问题消失了。
总结:FLEX中如果没有指定,NetConnection默认的objectEncoding为ObjectEncoding.AMF3。马虎害死人呐。
p.s. 希望快些见到FMS4

posted @ 2009-05-17 03:20  Andy  阅读(235)  评论(0编辑  收藏  举报