Related Posts
Получение логина и пароля техподдержки 1С из базы
Класс для вывода отчета в Excel
Счет-фактура для УПП
Библиотека классов для создания внешней компоненты 1С на C#
Акт об оказании услуг (со скидками) — внешняя печатная форма для Управление торговлей 11.1.10.86
Прайс-лист с артикулом в отдельной колонке
Спасибо. Тема про «многопоточность» интересна .. буду ждать продолжения)
Действительно, плохо искали. Мало того имея БСП 2.3 с доработкой или 2.4 уже можно не рисовать на форме элементы а выводить прогресс отдельно и многопоточность тоже уже реализована! А перепроведение как уже говорилось не подойдет, потому что оно будет накладывать взаимоблокировки. Придется и их учесть при написании кода, что усложнит алгоритм на порядок.
Дмитрий, ты молодец! интересные вещи пишешь!
(2)Многопоточность сама по себе ничего сверхестественного из себя не представляет. Интересен как раз сам механизм разбиения данных на блоки для выполнения в разных потоках. То-есть выделять группы документов, которые не будут мешать друг другу при проведении.
(3)Спасибо
Можно добавить лепту? Если операции действительно длительные то для оптимизации можно бы подумать в сторону «шага процента» чтобы не долбить проверками каждые 0.3 секунд.
Про многопоточное проведение вот тут достаточно подробно рассказано:https://infostart.ru/public/1102042
(6)В принципе, можно увеличить это время, так как все равно данные отправляются после каждого пятого документа.
(7)Да, я тоже привел ссылку на эту статью в публицации
(9) оу, невнимательно прочитал, смотрел больше на код…
Мне кажется не очень хорошей идея — проверять прогресс каждые 0.3 сек через серверные вызовы. Ну тут можно долго спорить на тему оптимизации клиент-серверного взаимодействия, но от серверных вызовов тут никак не уйти (ну разве что всё взаимодействие не вынести во внешнюю Native-компоненту, которая будет подключена и в фоновом процессе и в клиенте, и будет производить обмен сообщениями через свой канал, например через TCP — но тут сложно искать универсальное решение), иначе всё сведётся лишь к увеличению периода опроса сервера
(11)Ну да, вариантов взаимодействия много, некоторые я привел в статье. Это не все, естественно.
Спасибо за дополнение
Немножко не в тему, но коль про многопоточность заговорили … а в oscript можно ее как-то организовать и результаты в главную программу вернуть? Что-то не нашел ничего на вскидку…
(13)Я не в курсе. Задайте вопросАндрею Овсянкину
(1) Кому интересна тема многопоточности и хочет поэкспериментировать можете воспользоваться обработкой
https://infostart.ru/public/167865/) . Умеет запускать в многопоток как различные операции обработки данных, так и произвольный код. Умеет распределять потоки по выбранным полям таблицы.
PowerTools (
Ещё как вариант — использовать временный файл. Записывать в фоновом задании, а затем через вызов сервера (в сеансе пользователя) его читать.