ExtensionContext インスタンスの破棄

ActionScript 拡張クラスは、ExtensionContext の dispose() メソッドを呼び出すことで、ExtensionContext インスタンスを破棄できます。このメソッドはネイティブ実装に対して、インスタンスが使用しているリソースをクリーンアップするよう通知します。例えば、TVChannelController クラスに、次のようなクリーンアップ用メソッドを追加できます。

public function dispose     (): void { 
    extContext.dispose(); 
    // Clean up other resources that the TVChannelController instance uses. 
}

ActionScript 拡張クラスでは、ExtensionContext インスタンスの dispose() メソッドを明示的に呼び出す必要はありません。その場合は、ランタイムのガベージコレクターによって ExtensionContext インスタンスが破棄されるときにこのメソッドが呼び出されます。ただし、ベストプラクティスとしては、dispose() を明示的に呼び出します。dispose() の明示的な呼び出しによって、通常、ガベージコレクター処理を待つよりもはるかに早くリソースがクリーンアップされます。

明示的に呼び出された場合も、ガベージコレクターによって呼び出された場合も、ExtensionContext の dispose() メソッドの結果、ネイティブ実装のコンテキストファイナライザーが呼び出されます。詳しくは、拡張コンテキストのファイナライズ処理を参照してください。