1

Flex 4.5 似乎无法编译实现 IDisposable 接口的旧 AIR 应用程序。什么?为什么?以及从现在开始应该如何进行内存管理呢?

我搜索了 Adob​​e 网站、各种论坛,当然还搜索了网络。

干杯

4

1 回答 1

3

IDisposable即使在查看了所有文档并在线搜索之后,我也不能说我曾经见过在 API 中调用的类。我的意思是它有很多接口,但它不在 API 中。我相信您只是缺少一个文件或对具有的库的引用,IDisposable以便您可以通过编程方式“销毁”对象并将其留给 GC 收集。

这是该模式的简单实现:

public interface IDisposable {
    function dispose():void;
}

public class MyComponent implements IDisposable {

    // Implements dispose method that must be called just before
    // releasing a MyComponent object
    public function dispose():void {
        // Clean up:
        //      - Remove event listeners
        //      - Stop timers
        //      - Set references to null
        //      - ...
    }

    ...
}

这是一个很好的遵循模式,但如果每个 Flex 组件都被封装并使用良好的组件生命周期实践,则通常不需要。

于 2011-05-12T14:15:44.413 回答