0

我有一个具有三种状态的 Web 应用程序。

  1. 拨入-(基本上,以下都不是)
  2. VOIP — 连接到 Freeswitch 实例
  3. 听——此选项是通过与 FMS 实例的正常连接(与 #2 不同的服务器)。

当用户首次进入应用程序时,通过弹出窗口选择初始状态。从那时起,这些都由一个 ComboBox 控制。当它发生变化时,应用程序会检查所有打开的连接,然后关闭它们。然后它会打开适当的新连接。

问题是有时这会导致应用程序冻结 10-20 秒,有时会导致它崩溃,我不知道为什么。trace应该在 VOIP 更改之前触发的 s 仅在冻结之后出现(时间戳会有延迟),但是如果我注释掉对更改函数的调用,它们会按照预期的顺序出现。

到底是怎么回事?这种架构根本站不住脚吗?有没有更好的方法来做事?

4

1 回答 1

0

显然......这些联系是一条红鲱鱼。

查看服务器上的结果后,很明显问题出在将处理函数的调用放在 Flex 生成的 EventListener 中。之前的开发人员使用了change="handler(event)"导致崩溃的属性。当我切换到 时<voip-drop-box>.addEventListener("change",function(e:Event):void{});,一切都立即清除了。

于 2012-11-14T03:30:45.910 回答