Имя: Пароль:
1C
1С v8
Планировщик заданий
0 Segate
 
24.06.15
09:32
http://s019.radikal.ru/i612/1506/27/d609999fd611.png

Количество сеансов >99% планировщик заданий. И новые соединения продолжают появляться

Версия сервера 8.3.6.2041
Конфигурации бухгалтерия типовая и ЗУП, тоже типовой
1 ЧеловекДуши
 
24.06.15
09:40
(0) Регламентные задания запускают Фоновые задания, и никто не гарантирует, что 1С не запустит повторно фоновое задание, когда оно еще не завершилась по тому же самому Регламентному заданию :)

...помогает выставить парамерт в Расписании задания "повторять с паузой"...

Но народ сетует, что типо и это не выход, бывает слетает...

...набросал немного коду... может пригодится... :)


//Тестовая проверка регламентного задания на выполнение
//Разместить в модуле выполнения Регламентного задания...
РезПроверкиРеглЗадания = РегламентноеЗаданиеВыполняется("ТвояРегламентнаяЗадача");
Если РезПроверкиРеглЗадания = Истина Тогда
Возврат;
КонецЕсли;
//==================


//Тестовая проверка регламентного задания на выполнение
Функция РегламентноеЗаданиеВыполняется(ИмяЗадания) Экспорт

Попытка
РеглЗадание = РегламентныеЗадания.НайтиПредопределенное(ИмяЗадания);

//Если вызывает регламентное задание
МассивЗаданий = ФоновыеЗадания.ПолучитьФоновыеЗадания(Новый Структура("Состояние,РегламентноеЗадание",СостояниеФоновогоЗадания.Активно,РеглЗадание));
Если НЕ ЗначениеЗаполнено(МассивЗаданий)
или МассивЗаданий.Количество() = 0 Тогда
//Нет Активных... и это Хорошо...
ИначеЕсли МассивЗаданий.Количество() = 1 Тогда
Если ПустаяСтрока(ИмяПользователя())    
или РольДоступна("РегламентноеЗадание")
                            
Тогда
//Выполнение регл задания...
Иначе
ТекстСообщения = "Зафиксирована попытка повторного запуска регламентного задания: "+ИмяЗадания;
ЗаписатьОшибку(ТекстСообщения,"Регламентное задание");

Возврат Истина;
КонецЕсли;
Иначе
ТекстСообщения = "Зафиксирована попытка повторного запуска регламентного задания: "+ИмяЗадания;
ЗаписатьОшибку(ТекстСообщения,"Регламентное задание");

Возврат Истина;
КонецЕсли;

Исключение
ОписОшиб = ОписаниеОшибки();
ТекстСообщения = "Не удалось проверить регламентное задание на повторный запуск: "+Строка(ИмяЗадания)+"
|Опис: "+ОписОшиб;
ЗаписатьОшибку(ТекстСообщения,"Регламентное задание");

Возврат Неопределено;
КонецПопытки;

//Признак того, что Задание не выполняется
Возврат Ложь;
КонецФункции
2 Segate
 
24.06.15
10:16
Не совсем понятно, что могло нагенерить столько сеансов... причем они не исчезают после перезапуска сервера.