Среда, 10 Апрель 2013 22:34

1С и многопоточность

Автор 
Оцените материал
(0 голосов)

1С очень парадоксальная платформа. Ее история насчитывает уже больше двадцати лет и при довольно высокой популярности платформы на протяжении всего этого времени разработчиками проявляется паталогическая нелюбовь к новшествам программистского, если можно так выразиться, искусства.

В самой последней на сегодняшний день версии до сих пор используются принципы и технологии программирования прошлого десятилетия, как то устаревающая технология COM, процедурный стиль программирования, встроенный язык запросов, способный только считывать информацию из базы, практически полное игнорирование принципов ООП, отсутствие многопоточности.

Однако относительно последнего пункта не все так плохо, в платформу встроено некое решение и называется оно фоновые задания. Изначально фоновые задачи задумывались как средство распределение нагрузки по рабочим серверам (отсюда и первое ограничение - полноценное распараллеливание возможно только в клиент-серверном варианте работы). Но при этом ничего не мешает использовать данный функционал на одном сервере, распараллелив операции, выполнение которых занимает длительное время.

При реализации многопоточности таким образом следует учитывать что не каждую операцию удастся удачно распараллелить, также заведомо неизвестно какое количество фоновых задач сможет эффективно увеличивать производительность выполнения распараллеливаемых процедур, остается открытым и вопрос о синхронизации обрабатываемой информации. Недокументированный характер использования данной функции перекладывает решение этих вопрос на плечи программиста. Небольшое описание и примеры кода можно изучить здесь.

Прочитано 1698 раз
Evgen

Бла бла бла

Сайт: www.facebook.com/joltd
Другие материалы в этой категории: 1C Cокращения и аббревиатуры »