Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 20:52

Фоновые задания

Автор Luzer1C, 12 ноя 2014, 08:29

0 Пользователей и 1 гость просматривают эту тему.

Luzer1C

Всем привет.
Натолкнулся тут на многопоточную обработку данных. Да-да. Именно многопоточная. Но реализовать её можно только через фоновое задание.
И у меня возник вопрос: А можно ли процедуру выполнения фонового задания создать в модуле формы?
На данный момент эта процедура прописана в Общем модуле с пометкой Экспорт.
Я уже протестировал время выполнения алгоритма. Прирост в производительности есть, и он очень существенный.
Халамбалам.

cska-fanat-kz

А как влияет на производительность то, где находится процедура?:dfbsdfbsdf:
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

sertak

Цитата: Luzer1C от 12 ноя 2014, 08:29
А можно ли процедуру выполнения фонового задания создать в модуле формы?
Ну, напрямую нет, но можно, например, из экспортной процедуры (которая связана с регламентным заданием) общего модуля вызвать все, до чего руки дотянутся.

Luzer1C

ЦитироватьА как влияет на производительность то, где находится процедура?
1. Процедура находится в общем модуле.
2. На производительность влияет сильно. Тестировал два алгоритма. Один выполнился за 77 секунд, а другой за 14 секунд. Есть разница?
Халамбалам.

KrivosheevEV

Клиент быстрее сервера. Забавно.

sertak

Ну, раз такое дело, тогда реализовать псевдорегламентное задание в модуле формы с помощью ПодключитьОбработчикОжидания(), например.

Luzer1C

У меня была такая идея через ОбработчикОжидания. Надо попробовать.
Добавлено: 12 ноя 2014, 13:48


Была такая задача: сделать отбор по определённым критериям номенклатуры и у этого списка поменять один реквизит на другой.
Принцип действия в том, что создаётся несколько фоновых заданий. Опытным путём определено, что 8-10 штук. Соответственно этот список с номенклатурой делится на количество фоновых заданий и обрабатывается каждый кусок списка в своём фоновом задании.
Халамбалам.

cska-fanat-kz

Цитата: Luzer1C от 12 ноя 2014, 10:50
ЦитироватьА как влияет на производительность то, где находится процедура?
1. Процедура находится в общем модуле.
2. На производительность влияет сильно. Тестировал два алгоритма. Один выполнился за 77 секунд, а другой за 14 секунд. Есть разница?

То есть первый раз вызывалась процедура из  общего модуля а второй - формы и была разница?

А тот момент что чтобы вызвать процедуру формы надо эту форму сперва получить... На получение время не тратится?

Исключительно ИМХО, Многопоточность может реализовываться не сколько регламентным заданием а скорее вторым параллельно работающим сеансом...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Besart

Цитата: cska-fanat-kz от 12 ноя 2014, 14:29Многопоточность может реализовываться не сколько регламентным заданием а скорее вторым параллельно работающим сеансом...
вы правы коллега, многопоточность в режиме одного сеанса невозможна


Luzer1C

ЦитироватьТо есть первый раз вызывалась процедура из  общего модуля а второй - формы и была разница?
Первый раз всё было в модуле формы, а второй - процедура вызывалась из общего модуля.
Все действия проводились на сервере, базы на SQL.
Халамбалам.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск