2009-12-08 5 views
0

Я использую URLStream для загрузки файлов размером 30-80 МБ по HTTP. Он отлично загружается в Windows XP, но очень отстает в OSX. У кого-то были подобные проблемы? Вот некоторые фрагменты кода.URLStream & OSX laggy

function startDownload():void 
    { 

     //opening file 
     var FileWriteStream:FileStream = new FileStream(); 
     FileWriteStream.openAsync(DownloadingFile, FileMode.WRITE); 

     //adding listeners to stream 
     URLReadStream = new URLStream(); 
     URLReadStream.addEventListener(ProgressEvent.PROGRESS, trackCurrentDownload); 
     URLReadStream.addEventListener(Event.COMPLETE, downloadComplete); 
     URLReadStream.addEventListener(IOErrorEvent.IO_ERROR, downloadError); 
     URLReadStream.load(DownloadURLRequest); 

     function trackCurrentDownload(event:ProgressEvent):void 
     { 
      //update progress bars 
      DownloadProgress.setProgress(event.bytesLoaded+resumeSize, event.bytesTotal); 

      if (URLReadStream.bytesAvailable > 2048 || event.bytesLoaded == event.bytesTotal) 
      { 
       //read stream & write bytes to file 
       var byteArray:ByteArray = new ByteArray(); 
       URLReadStream.readBytes(byteArray, 0, URLReadStream.bytesAvailable); 
       FileWriteStream.writeBytes(byteArray, 0, byteArray.length); 
       byteArray = null; 
      } 

     } 
    } 

Я пробовал разные размеры буфера. Я даже прокомментировал событие PROGRESS, и он все еще был лагги. Очевидно, я закрываю все &, чтобы удалить слушателей в функции downloadComplete. Кто-нибудь удалил прослушиватель событий PROGRESS в обратном вызове и добавил его обратно в конце обратного вызова? Я на самом деле тупик, особенно потому, что он отлично работает в Windows. Спасибо за любую помощь или предложения.

ответ

0

Существует ошибка с ошибкой в ​​Adobe Jira о плохой работе Flash Player на Mac. Ошибка все еще открыта. Есть дискуссии в Интернете по поводу выпуска: http://www.gskinner.com/blog/archives/2009/05/idle_cpu_usage.html http://blogs.adobe.com/air/2009/05/performance_tips_for_adobe_air.html

первого звено имеет решение я не судимый с модифицирующим на фреймрейт .other то, что Flash Player 10 должен быть улучшен производительностью, я бы попытаться запустить приложение на новый выпущенный воздух (2 бета) и посмотрите, улучшилась ли производительность