我正在使用 red5 和 flex 开发一个在线游戏。使用 RTMP 连接。我只使用了 netConnection.call。我的问题是 red5 呼叫没有同步庄园。有些电话突然打给客户,有些电话需要时间。我想让这个电话按顺序到达客户端。请帮助我任何人...
问问题
533 次
2 回答
0
Red5 提供了两个支持同步和多线程访问的应用程序适配器。要使用它们,只需在应用程序中扩展 org.red5.server.adapter.ApplicationAdapter 以进行同步或 org.red5.server.adapter.MultiThreadedApplicationAdapter。
于 2012-10-21T13:25:15.510 回答
0
以下是我的意见,我相信有更好的方法可以做到这一点。
- 编写一个类,负责从 NetConnection.call 执行。在这个类中,确保在上一个完成之前没有调用。它确保了顺序,但减慢了执行速度。
- 编写一个这样的类: 应该有一个数据结构,也许是最简单形式的数组。数组包含保存调用顺序、回调函数和从服务器返回的结果的对象。调用方法时,将这些调用按调用顺序添加到数组中。当您从服务器收到结果时,请检查数组。如果尚未返回先前的调用,请将它们存储在数组中。如果之前没有挂起的调用,请调用您的回调函数任何“稍后调用但更早完成”的函数,并从数组中删除该项目。
但是,(总是有一个但在 red5 中),如果你的应用程序需要一些结果,也许你应该考虑你的架构。大多数时候,经过深思熟虑的事件处理机制消除了需求或有序结果。
于 2011-12-19T17:31:35.487 回答