Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 26.09.2011
Сообщений: 28

Как задать имя потоку-демону?

26.12.2011, 14:20. Показов 1305. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть поток-демон:

package com.epam.hwutil.service.notificationsyst em.mailer;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import java.sql.*;

import java.util.Timer;
import java.util.TimerTask;

import com.epam.hwutil.service.db.ConnectionPoo l;
import com.epam.da.shared.DaeException;

public class UpdateUserInfo extends Timer {

private static final Log LOG = LogFactory.getLog(UpdateUserInfo.class);

private static final String INSERT_SQL =
"INSERT INTO DW.HWU_USER" +
"(USER_ID, USER_TYPE_ID, USER_IS_ACTIVE, USER_FIRSTNAME, USER_LASTNAME)" +
"SELECT MP.PERSON_ID, 4, 1, MP.FIRST_NAME, MP.LAST_NAME" +
"FROM M_PERSON@PMCDB MP, M_EMPLOYEE@PMCDB ME " +
"WHERE NOT EXISTS (SELECT U.USER_TYPE_ID FROM HWU_USER U WHERE U.USER_ID = MP.PERSON_ID)" +
"AND ME.EMPLOYEE_ID = MP.PERSON_ID AND ME.FIRED = ''N''";

private static final String DELETE_SQL =
"DELETE FROM DW.HWU_USER U " +
"WHERE EXISTS (SELECT ME.EMPLOYEE_ID FROM M_EMPLOYEE@PMCDB ME" +
"WHERE ME.FIRED = ''Y'' AND ME.EMPLOYEE_ID = U.USER_ID )";

public static final long period = 43200000; // delay - 12 hours
public static final long delay = 1000; // wait 1 sec before start

public UpdateUserInfo(int delay) {
super(true);
schedule(new TimerTask() {
public void run() {
while(true){
try {
update();
}
catch (DaeException e) {
LOG.info("Update thread interrupted...");
}
}
}
private void update() throws DaeException {
Connection conn = null;
try
{
conn = ConnectionPool.getInstance().getConnecti on();
PreparedStatement statement = conn.prepareStatement(INSERT_SQL);
statement.execute();
statement = conn.prepareStatement(DELETE_SQL);
statement.execute();
statement.close();
}
catch (SQLException e)
{
if(conn!=null)
ConnectionPool.getInstance().releaseConn ection((java.sql.Connection) conn, true);
throw new DaeException("SQL exception while updating options..."+e.getMessage());
}
finally
{
if(conn!=null)
ConnectionPool.getInstance().releaseConn ection((java.sql.Connection) conn, false);
}
}
},delay, period) ;
}

public UpdateUserInfo() {}
public static void main(String[] args) {new UpdateUserInfo();}

}

есть в другом классе его вызов:
...
UpdateUserInfo uui;
...
uui = new UpdateUserInfo();
...

как этому потоку задать имя?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.12.2011, 14:20
Ответы с готовыми решениями:

Как задать имя столбца, если имя - это значение поля другой таблицы?
Доброго времени суток! При вставке нового значения в таблицу1, срабатывает триггер, который добавляет столбец в таблицу2. Именем этого...

Как задать имя формы?
Form1 в Имя программы

Как задать имя фотографии
Всех приветствую, не понимаю как присвоить имя фотографии для дальнейшего использования. for i in range(1,101): bomb =...

4
0 / 0 / 0
Регистрация: 22.07.2009
Сообщений: 457
26.12.2011, 16:53
очевидно uui.setName(".."), как и любому потоку.
0
0 / 0 / 0
Регистрация: 26.09.2011
Сообщений: 28
26.12.2011, 17:04  [ТС]
так не получится...
класс где у меня создаётся экземпляра расширяется не от класса Thread,надо это сделать в классе UpdateUserInfo,только как?
0
0 / 0 / 0
Регистрация: 22.06.2011
Сообщений: 35
26.12.2011, 17:24
Цитата Сообщение от servannin
так не получится...
класс где у меня создаётся экземпляра расширяется не от класса Thread,надо это сделать в классе UpdateUserInfo,только как?
Thread.currentThread().setName()
0
0 / 0 / 0
Регистрация: 26.09.2011
Сообщений: 28
26.12.2011, 18:38  [ТС]
спасибо за помощь!
currentThread() то я и не приметил )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.12.2011, 18:38
Помогаю со студенческими работами здесь

Как задать имя переменной
Нужно создать переменную с названием которое записано в char. char name; name = "A"; bool /*содержимое name*/ = true; // bool A...

Как задать имя для процесса
Здравствуйте. У меня достаточно необычный вопрос и скорее всего не по теме. Вот есть 2 перл скрипта. Мы их запускаем. Открываем...

Как задать имя отправителя формы?
Добрый день, есть вопрос по передаче имени отправителя: человек заполняет форму обратной связи на сайте, указывает свое имя и почту,...

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

Как задать переменное имя файла
Здравствуйте! Вы случайно не знаете как задать в maple переменное имя файла. Например в delphi можно написать: R:=1; assignFile(F,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru