当浏览文件对话框打开的时间长于配置的会话超时时间时,与Flex客户端关联的服务器会话会超时,这是一个问题。似乎在某些播放器上,当执行FileReference上的浏览或下载时,播放会停止。这也会导致远程呼叫被阻止,因此我们的手动保持活动消息不会发送到服务器,从而导致会话超时。
我在文档中搜索了一些与此有关的信息,并发现了一个通知,但是它没有明确列出它确实(不)起作用的球员。谁知道我可以找到完整的清单吗?
PS:这是提到此行为的链接:
http://livedocs.adobe.com/flex/3/html/help.html?content=17_Networking_and_communications_7.html
而调用
FileReference.browse(),
FileReferenceList.browse(),或
FileReference.download()方法是
执行,大多数玩家将继续
SWF文件播放。
http://livedocs.adobe.com/flex/3/langref/flash/net/FileReference.html
而调用
FileReference.browse(),
FileReferenceList.browse(),或
FileReference.download()方法是
执行时,SWF文件播放会暂停
独立版本和外部版本
Flash Player和AIR for Linux和
Mac OS X 10.1和更早版本
谁知道“外部Flash Player”是什么意思?
PPS:我们在Firefox似乎停止播放的Linux(10.0.x和10.1.x)上以及在似乎继续播放的IE的Windows(10.0.x)上进行了测试。
最佳答案
不幸的是,您无法做任何事情,这是一个阻塞的调用,并且Player会在AVM的多个实例之间共享资源(包括线程),以使用更少的内存。 Chrome,Webkit 2和FF4(3.7?)应该没问题,因为它们将插件隔离在单独的进程空间中,而Player没有机会这样做。不幸的是,由于阻塞,如果您花点时间选择文件,Chrome会弹出一个对话框,提示“脚本执行时间太长” :(
github.com/Adobe/FlashPlayer肯定会很好吗? :-)