Java QT与Flex/Flash/AIR的多媒体对比

Java QT与Flex/Flash/AIR的多媒体对比,java,apache-flex,flash,qt,actionscript,Java,Apache Flex,Flash,Qt,Actionscript,我使用AIR开发了一个MIDI应用程序,该应用程序从Java读取MIDI代码,发现除非我将所有内容都转移到Java,否则它的执行速度不够快。在actionscript中,Green thread是否可以通过充当多线程应用程序来改善AIR/Flash,从而提高NativeProcess的读写性能 如果不是的话,你会建议把所有的都转移到Java还是选择Qt框架?我不太喜欢C++语言。 < P> Flash播放器不提供多线程支持。但是,如果您正在编写一个桌面应用程序(使用AIR运行时),您可以使用Na

我使用AIR开发了一个MIDI应用程序,该应用程序从Java读取MIDI代码,发现除非我将所有内容都转移到Java,否则它的执行速度不够快。在actionscript中,Green thread是否可以通过充当多线程应用程序来改善AIR/Flash,从而提高NativeProcess的读写性能


如果不是的话,你会建议把所有的都转移到Java还是选择Qt框架?我不太喜欢C++语言。

< P> Flash播放器不提供多线程支持。但是,如果您正在编写一个桌面应用程序(使用AIR运行时),您可以使用NativeProcess生成一个命令行工具(python、java、ruby、C等)在后台进行Midi处理,而让Flash只处理UI更新,这正是Flash的真正意义所在

绿色线程对于某些降低帧速率的数据处理任务来说是一种有用的方法,但我怀疑您的MIDI处理相当密集——它可能不属于Flash


如果您要部署到web,那么最好使用Java(或任何其他服务器端资源)进行MIDI处理。如果您想让我更具体一些,您必须提供更多关于处理类型的详细信息。

您好,很多时候我对这个问题没有直接的答案,但我可能可以给您提供更多的信息来帮助您。AIR/Flash本身不是多线程的。伪造多线程的唯一方法是阻止后台处理,让UI更新,然后在某些数据处理完成后恢复。如果您确实需要多线程支持,我建议您坚持使用Java,如果您想使用QT框架,请参阅此处的绑定:还有一个简短说明,如果它不是显而易见的,你将得到最好的性能从写在C或C++,然后编译到机器代码的特定处理器,而不是任何运行在虚拟机之上。这就是说,如果您仔细考虑如何从Java向AS呈现数据,您可能会在中完成UI,因为您只需要在Java中加载所有繁重的预处理(在某些情况下,对象的序列化也将成为一个瓶颈,但每1/30秒更新一次将使动画保持流畅和最新,并且不会使过程过载)。