チェンジセット 385: as3/Profiler/src

差分発生行の前後
無視リスト:
コミット日時:
2008/05/10 13:17:00 (4 年前)
コミッタ:
jinten_ken
ログメッセージ:

FlashPlayer?のバージョンチェック機構を追加。

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • as3/Profiler/src/Profiler.as

    r358 r385  
    2626        import flash.sampler.NewObjectSample; 
    2727        import flash.utils.Dictionary; 
     28        import net.jinten.debug.utils.DebugUtils; 
    2829         
    2930        /** 
     
    3940                /** 
    4041                 * Profilerインスタンスです。初めてこのプロパティを呼んだときにインスタンスが生成され、プロファイルが開始されます。  
     42                 * ただし、プロファイルを行うためには、バージョン9,0,115,0以上のDebugプレイヤで再生されている必要があります。 
     43                 * アプリケーションを再生しているFlashPlayerが条件を満たしていない場合はnullを返します。 
    4144                 */ 
    4245                public static function get instance():Profiler { 
    43                         if (_instance == null) { 
     46                        if (_instance == null && DebugUtils.isProfilerEnabled()) { 
    4447                                _instance = new Profiler(new SingletonEssence); 
    4548                        } 
  • as3/Profiler/src/net/jinten/debug/utils/GCManager.as

    r358 r385  
    2727        import flash.system.System; 
    2828        import flash.utils.Timer; 
     29        import net.jinten.debug.utils.DebugUtils; 
    2930         
    3031        /** 
     
    3839                private var _timer:Timer; 
    3940                 
     41                private static var _available:Boolean; 
     42                /** 
     43                 * 強制ガベージコレクションが利用可能な場合はtrue、利用不可能な場合はfalseとなります。 
     44                 * アプリケーションがバージョン9,0,115,0以上のDebugプレイヤで再生されている場合、利用可能です。 
     45                 */ 
     46                public static function get available():Boolean { 
     47                        return DebugUtils.isProfilerEnabled(); 
     48                } 
    4049                 
    4150                //----- methods -----// 
     
    4352                /** 
    4453                 * コンストラクタです。 
    45                  * @param      interval_sec ガベージコレクションを実行する秒間隔です。0以下を指定した場合定期的な実行はされません。 
     54                 * @param interval_sec ガベージコレクションを実行する秒間隔です。0以下を指定した場合定期的な実行はされません。 
    4655                 */ 
    4756                public function GCManager(interval_sec:uint = 60) { 
     
    5160                 
    5261                /** 
    53                  * ガベージコレクションを実行します。 
     62                 * 強制ガベージコレクションを実行します。 
     63                 * @return ガベージコレクションが実行可能だった場合trueを返します。 
    5464                 */ 
    55                 public static function doGC():void
     65                public static function doGC():Boolean
    5666                        System.gc(); 
     67                        return available; 
    5768                } 
    5869                 
    5970                /** 
    6071                 * 定期的にガベージコレクションを実行します。 
    61                  * @param       interval_sec ガベージコレクションを実行する秒間隔です。0以下を指定した場合定期的な実行はされません。 
     72                 * @param       interval_sec ガベージコレクションを実行する秒間隔です。0以下を指定した場合定期的な実行はされません。 
    6273                 */ 
    6374                public function startGCTimer(interval_sec:uint):void {