Использование scheduleDeferred в GWT?

#java #gwt

#java #gwt

Вопрос:

Привет, пожалуйста, скажите мне, как использовать приведенный ниже код в GWT?

 Scheduler.get().scheduleDeferred(new ScheduledCommand() {    
  @Override
  public void execute() {
    //code
  }
});
  

Спасибо!

Ответ №1:

Он откладывает некоторый код до тех пор, пока браузер не перерисует страницу (при необходимости) и не будут обработаны ожидающие события (то есть после наведения курсора мыши и щелчка, если это сделано при наведении курсора мыши)

Ответ №2:

Опрос?

 Scheduler.get().scheduleDeferred(new ScheduledCommand() {    
  @Override
  public void execute() {
    // request data from server
    // update ui
    Scheduler.get().scheduleDeferred(this); // reschedule
  }
});
  

scheduleFixedPeriod я знаю, что здесь лучше подходит 😉

Комментарии:

1. Представьте, что вы создаете приложение для веб-чата. Вы должны периодически запрашивать последние сообщения с сервера, например, один раз в секунду. scheduleFixedPeriod() это одно из решений здесь.

2. Привет, локи, какой бы код ни был написан внутри метода execute(), выполняется точно через некоторое время?

3. Правильно. Для scheduleFixedPeriod вас может быть определен этот период времени. Проверьте это: google-web-toolkit.googlecode.com/svn/javadoc/latest/com/google /…

4. Привет, локи, какие входные данные принимает метод scheduleFixedPeriod? где разместить этот метод в приведенном выше коде? Пожалуйста, помогите мне?

5. scheduleDeferred предназначен для чего-то, что должно быть выполнено один раз (@loki2302, вы правы: не это, а scheduleFixedPeriod предназначено для задачи, которую вы привели в качестве примера)