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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не работает таймер 
V
    Опции темы
JohnTravolta
Дата 2.9.2010, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Код

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.Timer;

public class t {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Timer timer;
         timer = new Timer(1000, new ActionListener()
          {
              public void actionPerformed(ActionEvent e)
              {
               System.out.println("WOW!");
              }
          } );
         timer.start();

    }

}

по-идее должно каждую секунду выводить WOW!
подскажите что не так?
PM MAIL   Вверх
Samotnik
Дата 2.9.2010, 19:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

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



 smile  чё ?
Что Вы пытаетесь сделать ? 
PM MAIL   Вверх
jk1
Дата 2.9.2010, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



JohnTravolta,  таймеры выполняют ожидание в отдельном потоке-демоне. Это означает, что что если ни один другой поток не выполняется, то исполнение программы будет завершено.
Чтобы все работало так, как ожидается, подвесьте основной поток:
Код

 public static void main(String[] args) throws InterruptedException {
        Timer timer;
         timer = new Timer(1000, new ActionListener()
          {
              public void actionPerformed(ActionEvent e)
              {
               System.out.println("WOW!");
              }
          } );
         timer.start();
         Thread.sleep(10000000);
    }
 
В настоящих SWING-приложениях роль основного потока играет EDT, который осуществляет отрисовку и распределение событий и не завершается до тех пор, пока есть открытые фреймы и диалоги.


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
JohnTravolta
Дата 2.9.2010, 23:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



спасибо. 
я планировал запустить таймер в сервлете чтобы он каждые 100мс отправлял информацию клиенту.
так можно делать?
то есть у меня ряд пробелов здесь и я не знаю как это лучше сделать.
мне посоветовали использовать сокет на флеше. 
скажите сокет должен быть и на сервере и на клиенте?
или можно на клиенте запустить сокет со слушателем, а на сервлете таймер и отправлять инфу? так можно делать?
то есть в теле таймера указать что-то типа 
Код

              writer = response.getWriter();
              writer.println(xmlResponse);
              writer.close();


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


Бывалый
*


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

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



Код похоже взят из База знаний Vingrad, по крайней мере очень похож.
--------------------
Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
PM   Вверх
Skipy
Дата 3.9.2010, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 487
Регистрация: 24.8.2006
Где: Москва, Россия

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



Цитата(JohnTravolta @ 2.9.2010,  23:45)
мне посоветовали использовать сокет на флеше. 
скажите сокет должен быть и на сервере и на клиенте?
или можно на клиенте запустить сокет со слушателем, а на сервлете таймер и отправлять инфу? так можно делать?

А как Вы собираетесь, во-первых, пройти через прокси, за которым, возможно, сидит клиент, во-вторых - обойти файрвол и антивирус, которые у меня, например, не дадут никакому флешу открыть сокет, а тем более - кому-то коннектиться ко мне. А с NAT Вы что делать будете? А с внутренними сетями? Я, например, что дома, что на работе, - сижу в сети 10.х.х.х. А дома - еще и 192.168.х.х за маршрутизатором. Вы какой адрес для соединения указывать будете?

В общем, про открытие сокета флешом можете смело забыть, имхо. При нормально сконфигурированной сети и безопасности это не будет работать.

Вы исходную задачу лучше опишите. Что Вы хотите передавать и для чего.

Это сообщение отредактировал(а) Skipy - 3.9.2010, 09:19


--------------------
С уважением,
Евгений aka Skipy
www.skipy.ru
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




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


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

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