2015-03-16 4 views
0

Я пишу плагин eclipse, который всегда будет проверять файл в текущем активном редакторе (если редактор изменится, тогда он проверит новый редактор), а затем выделит некоторые строки в редакторе. (База данных содержит все имена файлов и связанные строки, которые необходимо выделить).Запуск потока всегда в eclipse

Мне удалось разработать плагин. Проблема в том, что он только проверяет базу данных один раз и создает собственное сообщение об ошибке, если он не может подключиться к базе данных. Я хочу, чтобы плагин регулярно проверял базу данных (для новых обновлений), и как только он подключился к базе данных, он немедленно выделит редактор.

Я думаю, что я не могу использовать затмение WorkspaceJob, потому что workspaceJob проверяет редактор только один раз, но я хочу сохранить его как непрерывный процесс за определенный интервал (скажем, каждые 30 секунд). Итак, я думаю, что нить подходит.

Но как я могу его реализовать? Как запустить поток в eclipse, который будет работать всегда? Есть ли лучшее решение?

+3

Вы можете запустить Thread в Eclipse так же, как и обычную программу Java. –

+0

Спасибо, greg! ... – Tarek

ответ

0

Вы можете использовать WorkspaceJob с помощью метода schedule(long delay), чтобы установить 30-секундную задержку. У вас есть задача перепланировать работу после ее запуска, чтобы запустить ее на регулярной основе:

WorkspaceJob job = new WorkspaceJob("jobname") { 
    @Override 
    public IStatus runInWorkspace(IProgressMonitor monitor) 
      throws CoreException { 
     // TODO add code here 
     this.schedule(30000); 
     return Status.OK_STATUS; 
    } 
}; 
job.schedule(); 
+0

Это не должно быть WorkspaceJob - обычный Job, скорее всего, сделает. – nitind

Смежные вопросы