Показать сообщение отдельно
Старый 05.04.2007, 13:40
Binom777 вне форума Посмотреть профиль Отправить личное сообщение для Binom777 Найти все сообщения от Binom777
  № 1  
Ответить с цитированием
Binom777

Регистрация: Mar 2006
Сообщений: 6
По умолчанию Многопоточность в flash (as3)

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

Возник вопрос о многопоточности.

Приведу пример из j2me:



стартовый классa Main.java.
Код:
import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDlet;

public class Main extends MIDlet {
   public static KeyShow keyShow;
        public Main()
        {
          keyShow = new KeyShow( this );
        }
  
        protected void startApp()
        {
          Display.getDisplay( this ).setCurrent( keyShow );
          try{
          new Thread(keyShow).start();
          }catch(Exception e){};
          
        }

        protected void destroyApp(boolean unconditional)
        {
          
        }

        protected void pauseApp()
        {
            
        }

}
рабочий класс KeyShow.java (урезаны некоторые ф. что бы не занимать место, пожей поясню что кчему)




Код:
import javax.microedition.lcdui.*;
....

public class KeyShow extends Canvas implements Runnable,   {

.....
   
public void run(){
    
    while(true){
        ....
       
        repaint();
        serviceRepaints();
        try{
        Thread.sleep(100);
        }catch (Exception e){}

        }
    
    
}

public void paint(Graphics g)
{
    ...
 
            g.drawString("TEST", 0,y,0);
 
    .... 
    
}
 
}
В классе Main.java. создается объект keyShow класса KeyShow
затем запускается отдельный поток с помощью строки new Thread(keyShow).start();
В котором постоянно выполняется перерисовка экрана с задержкой 100 милисек.

Общая задача: портировать игру с j2me на flash.

Вопросы:
1. Существует ли многопоточность в as3
2. Как она реализуается.
3. Если не существует многопоточности, что посоветуете?


заренее спасибо.