Свойства общего модуля #690997


#0 by bahtik
Здравствуйте! В свойствах общего модуля можно установить флажки "Клиент", "Сервер", "Внешнее соединение", "Вызов сервера", определив тем самым контекст для самого модуля и его видимость по отношению к контексту других модулей. Короче, с этим все понятно. Но может ли кто-нибудь сказать, как установка этих флажков влияет на производительность (и влияет ли вообще). Например, если установить свойство "Глобальный", то модуль будет компилироваться при запуске приложения, а не динамически, поэтому этот флажок без надобности устанавливать нежелательно. А вот с остальными как?
#1 by GROOVY
>> Например, если установить свойство "Глобальный", то модуль будет компилироваться при запуске приложения Да разве?
#2 by GROOVY
Флаги "Клиент", "Сервер", "Внешнее соединение", "Вызов сервера" - определяют для компилятора где будет компилиться модуль.
#3 by mikecool
+1 )))) повеселило
#4 by MaxS
хм. не знал. Это какая платформа? Можно программно управлять компиляцией? Утром запустил и всё скомпилировал. И весь день все летает.
#5 by bahtik
, Ну да.
#6 by bahtik
, Книга "Профессиональная разработка в системе 1С:Предприятие 8" (издание 2). Глава 3. Общий Модуль.: Если у общего модуля установлено свойство Глобальный, то экспорти- руемые методы общего модуля являются частью глобального контекста, и из встроенного языка можно обращаться к ним по имени, как к другим функциям, методам и свойствам глобального контекста. Если же модуль неглобальный, то при обращении к его экспортируемой процедуре или функции ее имя нужно указывать через точку от имени модуля (например, Обмен.ПолучитьПрефиксНомера). Последний способ предпо- чтительнее, так как неглобальные общие модули компилируются по мере обращения к ним, а не при запуске системы, как глобальные.
#7 by bahtik
Может оно и весело, конечно, но так устроен мир, тьфу, 1С ))
#8 by bahtik
А кто говорит о программном управлении компиляцией?
#9 by bahtik
Короче, конкретизируем вопрос. Какая разница между общим модулем с одним флагом "Сервер" и общим модулем с флагами "Сервер" и "Вызов сервера" в плане их компиляции? Меня это интересует потому, что хочется понять в чем смысл разделения модулей На "ОбщегоНазначенияСервер", "ОбщегоНазначенияВызовСервера" и т.п. в типовых конфигах.
#10 by MaxS
а где а в про компиляцию?
#11 by GROOVY
См
#12 by bahtik
Последнее предложение прочитай.
#13 by bahtik
"...Последний способ предпо- чтительнее, так как неглобальные общие модули компилируются по мере обращения к ним, а не при запуске системы, как глобальные."
#14 by Armando
"Вызов сервера" виден с клиента, но выполняется на сервере. Это накладывает дополнительные расходы на передачу между клиентом и сервером. Это моя догадка.
#15 by bahtik
Тогда не совсем понятно, зачем делать два флага: "Клиент" и "Вызов сервера"?
#16 by bahtik
То, где будет выполняться код, определяется директивами, насколько я понимаю...
#17 by Armando
Клиент - компилируется и выполняется на клиенте, Вызов сервера - позволяет обратиться к модулю скомпилированному на сервере
#18 by Armando
Если он компилируется на сервере, то и выполняться тоже будет на сервере.
#19 by bahtik
Где же он тогда будет выполняться, если включены оба флага: "Сервер" и "Клиент"? ))
#20 by bahtik
...и еще и "Вызов сервера"
#21 by Armando
откуда вызвали там и будет
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С