Jasmin JAVA-ассемблер | SEclub.org
Jasmin JAVA-ассемблер
Все новые
В главном классе можно писать методы которые записует в переменую код нажатой клавиши и 0 если отжата? А то у меня чота они не работают.

Ссылка на пост
Всего сообщений: 281
*
DDDENISSS
15 мая 2008 в 18:40
Как я понял по тому примеру у каждого треда есть свой номер- обьект1, обьект 2. Для второго треда надо просто скопировать new java/lang/Thread ... или что то изменить? Потом после первого треда написать обьект2 потом run. Больше не чего не надо писать?
15 мая 2008 в 18:44 / DDDENISSS (1)
*
Malcolm
15 мая 2008 в 19:30
DDDEN!SSS, сначала создаешь объект Thread, потом вызываеш Thread.start(), запускается метод run(), который прописан в потоке. Если просто вызвать run(), от этого новый поток не образуется.
*
DDDENISSS
18 мая 2008 в 10:36
Не понял какая разница между запускаеш и вызываеш run? Я всегда пишу .method public run()V я так понимаю это вызывается метод, а как его запустить. все треды начинаются с метода с одним и темже названием ? Вообще возможно сделать в одном классе несколько тредов не делая при этом други классов для треда? как в примере 2Theads
18 мая 2008 в 10:38 / DDDENISSS (1)
*
Malcolm
18 мая 2008 в 16:31
DDDEN!SSS, большая разница! Поток создается Java-машиной, если она получает команду Thread.start(), то она запускает метод run() в отдельном потоке. А если ты просто вызовешь метод run(), то он и начнет выполняться, как самый обычный метод, от этого новый поток не образуется, поскольку JVM не получила никакой команды. Другой класс, который расширяет Thread, можно не создавать, но тогда нужно в каком-то классе реализовать интерфейс Runnable и создать новый экземпляр класса Thread с указанием созданного Runnable в конструкторе (то есть Thread(Runnable r)) и запустить через Thread.start(). Это второй способ создания потока.
*
DDDENISSS
18 мая 2008 в 17:04
Я имел в виду разница в написании нетода, как я понял писать метод run всегда одинаково только для запуска надо это написать new java/lang/Thread dup aload_0 invokespecial java/lang/Thread/<init>(Ljava/lang/Runnable;)V putstatic Graph/T Ljava/lang/Thread; getstatic Graph/T Ljava/lang/Thread; invokevirtual java/lang/Thread/start()V . что бы сделать новый поток надо сделать новую перемено .field public static T Ljava/lang/Thread; ?
*
Malcolm
18 мая 2008 в 17:22
DDDEN!SSS, в run() ты пишешь, что хочешь. Там твой код, который начнет выполняться в другом потоке. В принципе, можно новую переменную и не создавать, если создать новый объект Thread и сразу запустить его методом start(). На Java это выглядит примерно так: new Thread(Runnable r).start(). Но вот как это написать в байт-кодах, я не возьмусь сказать наверняка. К тому же в этом случае над потоком потеряется контроль, поскольку не будет ссылки на объект самого потока. Иногда такой контроль нужен, иногда нет, в принципе, можно обратно вернуть на поток ссылку. Но если заранее известно, что нужен какой-то контроль надо потоком, то стоит сразу поместить ссылку на поток в какое-нибудь поле, как ты и написал.
18 мая 2008 в 17:23 / Malcolm (1)
*
DDDENISSS
19 мая 2008 в 18:23
В главном классе можно писать методы которые записует в переменую код нажатой клавиши и 0 если отжата? А то у меня чота они не работают.
19 мая 2008 в 18:25 / DDDENISSS (1)
*
DDDENISSS
21 мая 2008 в 14:56
Те методы только в канвасе можно писать.
*
DDDENISSS
21 мая 2008 в 15:01
Я написал если шарик на краю экрана то что бы он за экран не выкатывался при падении или управлении. Но часто бывает что он соровно выкатывается тоести если y I=176 то перейти на метку НЕ ВЫПОЛНЯЕТСЯ. Почему это происходит? И это можно как то исправить?
*
Malcolm
21 мая 2008 в 15:41
DDDEN!SSS, надо смотреть код, так сложно сказать.
*
DDDENISSS
21 мая 2008 в 16:11
Malcolm, вот управление шариком в Main.class upwap.ru/40476 только в этом коде я удолил пару строчек которые пытались поднять шарик когда он был на такойже высоте как и линия. Но в право сейчас соровно проскакивает. От чего это зависит.
21 мая 2008 в 16:13 / DDDENISSS (1)
*
Malcolm
21 мая 2008 в 16:34
DDDEN!SSS, без отладки сложно сказать, в этом и проблема программирования на мобиле. Я тебе предлагаю решение проще: писать не !=, а <=.
Скачать тему
Для полноценного использования разделов сайта войдите или зарегистрируйтесь.
Приложения Java | Загрузки Seclub | Форум | Главная
18+ © Seclub.org 2003-2025