Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Подгрузка большого числа звуков (http://www.flasher.ru/forum/showthread.php?t=139768)

Ilut 10.05.2010 22:45

Подгрузка большого числа звуков
 
Загружаю файлы приблизительно следующим образом:
Код AS1/AS2:

public function load_files()
{
      val=0;
      music[val].loadSound(arr[val],false);
}
 
private var on_load:Function = function(success:Boolean)
{
      if(val<104)
      {
            val++;
            music[val].loadSound(arr[val],false);
      }     
}

А в нужный момент происходит запуск нужного звука. Но есть некоторые проблемы:
1. Складывается впечатление, что программа "замораживается" во время подгрузки звука.
2. При запуске из флеша(во время отладки), все работает как нужно. Но когда запускаю .swf файл, то флешка зависает. Если убрать предварительную подгрузку звука, то флешка не зависает.

Подскажите пожалуйста, в чем проблема и как ее исправить. Заранее благодарю за помощь!

mooncar 10.05.2010 23:10

Попробуйте грузить их последовательно (или хотя бы 2-3-мя потоками), сейчас у вас загрузка всех 104 звуковых файла начинается практически одновременно.
Отслеживайте готовность загруженного и стартуйте загрузку следующего.

Ilut 11.05.2010 00:06

А разве они грузятся не последовательно? Разве onLoad вызывается не сразу после того как файл загрузился?

mooncar 11.05.2010 01:42

У вас похоже вообще все не так.
Что по вашему у вас делает функция on_load ? Где вы ее вызываете и что за аргумент success ?

Ilut 11.05.2010 01:55

Цитата:

Что по вашему у вас делает функция on_load ? Где вы ее вызываете?
Код AS1/AS2:

...
for(i=0;i<arr.length;i++)
{
        sd=new Sound();
        sd.onLoad=mx.utils.Delegate.create(this, on_load);
        music.push(sd);
}
...

Цитата:

и что за аргумент success ?
Успешность загрузки


Часовой пояс GMT +4, время: 03:37.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.