Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Player и потоки при остановке и запуске player 
:(
    Опции темы
alexu_id
Дата 14.4.2009, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 5.10.2006

Репутация: нет
Всего: нет



Доброго времени суток.

проблема в следующем я загружаю и запускаю песню на выполнение


далее по нажатию я останавливаю проигрыш песни с помощью функции "ПАУЗА"
Код

    private void pauseTurnOn(){
        try {
            if(player != null && player.getState() == Player.STARTED) {
                player.stop();
            }
        } catch(javax.microedition.media.MediaException ex) {
            System.out.println("SoundCanvas : can't start the player");
        }
    }



далее запускаю проигрыш песни дальше
Код

    private void pauseTurnOff(){
        try {
            if(player != null && player.getState() == Player.PREFETCHED) {
                player.start();
            }
        } catch(javax.microedition.media.MediaException ex) {
            System.out.println("SoundCanvas : can't stop the player");
        }
    }


пауза и включение осуществляется в отдельном потоке

public class SoundCanvas extends GameCanvas implements Runnable, PlayerListener, CommandListener { 
...

public void startPlay(){
            /* create new thread and player start */
            Thread _thread = new Thread(this);
            _thread.start();

   try {
         player = Manager.createPlayer(getClass().getResourceAsStream("pattern.mid"), "audio/midi");
         player.addPlayerListener(this);
         player.realize();
         player.prefetch();
         player.start();
      }
      catch(Throwable t) {
         reset();
      }

}

    
public void run()
    {

while(true){
     ...
}
     }

...
}

внимание вопрос, в среде NetBeans6.5 в режиме отладки видно что после выполнения player.start(); каждый раз создается новый поток, причем старый остается. это грузит естественно ресурсы телефона, если кто знает как реализовать паузу в проигрыша мелодии без создания дополнительных потоков player пожалуйста нужна ваша помощь.

PM MAIL   Вверх
delboy
Дата 13.5.2009, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 20.4.2009

Репутация: нет
Всего: нет



alexu_id, Собственно такой же вопрос. Думал убивать поток, и плеер, а время запонимнать. А потом заново создавать плеер заново и начинать воспроизведение с запомненого времени. Но это тоже не вариант, т.к. теряем время.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0567 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.