Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Принцип работы scheduler-а.. Как правильно организовать?? 
:(
    Опции темы
Levon11
Дата 26.6.2008, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Добрый день!!! 

Возможно немного не в тему, но всё же у меня такой вопрос.
Меня интересует принцип работы scheduler-а. Если я пишу свой на C#, то по какому принципу он должен работать?? Я скачал исходник с codeproject-а. Там просто создавался класс Timer timer, который через интервалы времени создавал ивенты, потом мой же сервис (я делал реализацию в виде сервиса) этот ивент ловит и проверяет совпадает ли время. Я как-то сомневаюсь что это именно правильный способ реализации.

Спасибо!
PM MAIL   Вверх
jonie
Дата 26.6.2008, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

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



а чтоб и нет. можно сделать такой поток :
Код

while(true){
 Sleep(1000);
 CheckEvents();
}
где CheckEvents проверит расписание, и вызовет в новых потоках события, если необходимо.
гораздо интереснее вопрос как хранить расписание.
http://forum.vingrad.ru/forum/topic-188851...duler-cron.html
вот тут я какие-то мысли излагал.. может пригодится кому.


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Bogdan1024
Дата 29.6.2008, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1436
Регистрация: 28.9.2005
Где: Киев

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



Хм. Мой scheduler проверял есть ли какие-то задачи каждую минуту, которые могут случиться за эту минуту, и если есть, то таймер переставлялся на эту разницу и когда он в следующий раз срабатывал, то в отдельном потоке обрабатывалась эта задача.


--------------------
user posted image
PM MAIL   Вверх
Levon11
Дата 29.6.2008, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Да... Наверно, ежеминутная проверка единственный вариант! smile 
PM MAIL   Вверх
jonie
Дата 30.6.2008, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

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



неединственный. в системе (как в win так и в nix) есть встроенный шедулер. почему бы не использовать его? как минимум он работает, и он "стандартен". вообще майкрософт рекомендует использовать его (в висте его, кстати, проапгрейдили).... впрочем, решать как всегда нам)


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Bogdan1024
Дата 30.6.2008, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1436
Регистрация: 28.9.2005
Где: Киев

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



jonie, а можешь скинуть какую-то инфу об использовании стандартного scheduler'a?


--------------------
user posted image
PM MAIL   Вверх
Bishop
Дата 30.6.2008, 12:07 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



PM WWW ICQ   Вверх
wectula
Дата 9.12.2022, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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




Модератор: Сообщение скрыто.

PM MAIL   Вверх
HodoWoulp
Дата 24.1.2023, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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




Модератор: Сообщение скрыто.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

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


 




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


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

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