繁体   English   中英

Flex自定义RSL库缓存问题

[英]Flex custom RSL library caching issue

我对如何在客户机上避免RSL缓存感到有点困惑。 我有很多模块和一个加载它们的主要应用程序。 几乎每个模块和应用程序本身都使用RSL库(这是我的常见库项目)。

这是它的样子:

  • MyLib.swf RSL
  • MainApp.swf (使用MyLib.swf作为RSL
  • modules / Module1.swf (使用MyLib.swf作为RSL
  • modules / Module2.swf (使用MyLib.swf作为RSL
  • 模块/ Module3.swf

问题本身:

现在我正在更改MyLib中的代码并编译新版本的MyLib.swf。 如何确定已加载旧版MyLib.swf的用户将获得新的RSL ,而不是旧的缓存RSL

是否有可能与RSL类似:

    var loader: Loader = new Loader();
    loader.load(new URLRequest("MyLib.swf?v1.2.3");

PS - 每次将MyLib.swf的名称更改为MyLib-v1.2.3.swf之类的东西都不是解决方案,因为我每次在MyLib中更改一些小的东西时都会有20个模块并编译所有这些模块不是一个好的解决方案。

您可能根本不需要RSL。 您的ApplicationDomain层次结构是什么? 如果在加载模块时没有明确指定加载上下文,则最终会在新的子ApplicationDomain使用每个模块

如果这是真的,并且您不打算将旧模块与新应用程序和类似的东西一起使用,那么您可以通过执行以下操作从根本上优化整个事情:

  1. 编译用于将MyLib.swf放入MainApp.swf所有类(快速简便) 在加载第一个模块之前将MyLib.swf加载到ApplicationDomain.currentDomain

  2. moduleX.swf排除所有lib类(您可能已经这样做了)

PS: 关于Flex RSL。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM