|   |   | 
| 
 | Производительность вычислений в обычных и управляемых формах (файловая версия) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Сниф 10.11.17✎ 01:13 | 
        Мне нужно написать конфигурацию для работы одного пользователя (файловая версия). База данных не используется (нет справочников, регистров и т.п.). Производится исключительно работа с Com-объектом - вызываются методы Com-объекта и обрабатываются данные, получаемые в событиях Com-объекта с помощью ДобавитьОбработчик. Далее эти данные обрабатываюся в нескольких таблицах значений. Основные операции - как раз с таблицами значений - поиск строк, перебор строк, арифметические операции и т.п.
 Одинаково ли быстро в таком случае будет работать конфигурация на управляемых формах и на обычных или есть разница в производительности? | |||
| 1
    
        simol 10.11.17✎ 01:17 | 
        А чего не попробуешь? ПРобовать быстрее чем ждать     | |||
| 2
    
        Сниф 10.11.17✎ 01:20 | 
        (1) Ну может у кого-то есть опыт. Не писать же конфу в двух вариантах.
 Com-объект так устроен, что возвращает запрашиваемые данные построчно. То есть если мы вызвали определенный метод и запросили 1000 строк, событие ПолучениеДанных сработает 1000 раз и мы запишем в ТЗ 1000 строк. Отсюда и вопрос о производительности. | |||
| 3
    
        simol 10.11.17✎ 01:32 | 
        1c эот такое, что убирание переноса строк вв циклах ускоряет на 10-20%
 Потоу только личные опыты | |||
| 4
    
        simol 10.11.17✎ 01:34 | 
        (2)Тут больше надо не управляемые или обычные, а попробовать 81,82,83
 И ты насчет 81 можешь быть приятно удивлен | |||
| 5
    
        youalex 10.11.17✎ 03:52 | 
        (3) Ускоряет в режиме отладки, или вообще в принципе?     | |||
| 6
    
        Antony8x 10.11.17✎ 07:35 | 
        (5) а есть разница?     | |||
| 7
    
        Филиал-msk 10.11.17✎ 07:51 | 
        (0) В данном случае обычные формы в целом быстрее, так как отсутствует передача и контроль контекста при "серверных" вызовах. С управляемыми формами тебе придется забавляться вприсядку с теми же таблицами значений.     | |||
| 8
    
        1Снеговик гуру 10.11.17✎ 08:11 | 
        (7) в УФ все делается в контексте сервера, вот и все. Зачем на клиент таблицы кидать? Отображаться они и так будут, если надо.     | |||
| 9
    
        1Снеговик гуру 10.11.17✎ 08:12 | 
        Разница лишь в удобстве программирования интерфейса.
 В обычных формах можно запариться все рисовать. А с управляемыми просто надо уметь работать. | |||
| 10
    
        1dvd 10.11.17✎ 08:13 | 
        (8) а если СОМ идёт с клиента?     | |||
| 11
    
        youalex 10.11.17✎ 08:19 | 
        (6) Есть подозрение, что таки, да     | |||
| 12
    
        1Снеговик гуру 10.11.17✎ 08:21 | 
        Плюс насколько важны асинхронные вызовы.
 Не знаю, работают ли в обычном интерфейсе немодальные вызовы через ОписаниеОповещения. | |||
| 13
    
        Сниф 10.11.17✎ 10:18 | 
        (10) СОМ как раз и будет на клиенте. Разве можно на сервере добавить обработчки событий СОМ-объекта через ДобавитьОбработчик?     | |||
| 14
    
        TormozIT гуру 10.11.17✎ 10:24 | 
        (0) Обычные формы однозначно быстрее.     | |||
| 15
    
        Fragster гуру 10.11.17✎ 10:30 | 
        если там арифметика, то может ну его нафиг, этот 1с, а использовать дельфи/си/что угодно другое компилируемое?     | |||
| 16
    
        Сниф 10.11.17✎ 10:38 | 
        (14) приму к сведению, спасибо
 (15) для каждой задачки изучать язык - голова треснет... | |||
| 17
    
        Fragster гуру 10.11.17✎ 11:13 | 
        (16) что там изучать-то?     | |||
| 18
    
        Fragster гуру 10.11.17✎ 11:14 | 
        да и на производительность насрать по большому счету, получается. и на требование установленной платформы о_О.     | |||
| 19
    
        Злопчинский 10.11.17✎ 23:40 | 
        (2) не знаю как в 8 но в клюшках если заполняешь тз на форме то тз надо сделать невидимой и заполнить, а потом видимость включить. Ускорение на порядок     | |||
| 20
    
        kev789 10.11.17✎ 23:47 | 
        (17) Тут ветка была, отказ от модальности в С# решается гораздо легче.
 А в языке 1С это какой то треш (Новый ОписаниеОповещения) | |||
| 21
    
        lodger 11.11.17✎ 13:56 | 
        ОФ: просто код, происходит все линейно, модально и синхронно.
 УФ: из-за асинхронности, немодальности и клиент-серверности придется в 3 раза больше кода писать и контролировать в каком контексте идет работа, данные формы коллекция или таблица значений, выведенная на форму таблица живет на сервере, обход строк таблицы на клиенте неразумен и тому подобные заморочки, которые в простых случаях усложняют разработку в разы, а исполнение кода в линейном синхронном стиле будет замедленно из-за беготни между контекстами. (0) вопрос. оно вам надо? | |||
| 22
    
        breezee 11.11.17✎ 14:37 | 
        (0) Рекомендую не использовать ком. Если есть возможность юзать веб сервисы или еще что-нибудь "по новее" лучше это юзать, ком довольно медленный. По формам не подскажу. А у вас будет серверная база или все на клиенте? И какие объемы данных будут? Может вам вообще 1с не нужен, если вы без конфигурации будете работать?     | |||
| 23
    
        breezee 11.11.17✎ 14:40 | 
        (21) А почему обход строк на клиенте не разумен? На счет в 3 раза больше кода, верно, и заморочки есть, но не совсем в 3 да и создание клиентской и серверной процедуры с подсказкой за один клик делается. Да и если все вынесено в модуль объекта/общие модули то проблем особо и не будет.     | |||
| 24
    
        Сниф 12.11.17✎ 22:21 | 
        (22) ком отдает данные построчно, скорей всего она работает на сокетах... Очень шустрый.     | |||
| 25
    
        AlvlSpb naïve 12.11.17✎ 22:35 | 
        (24) Не встречал шустрого ком. На небольшом объеме работает еще приемлемо, но если строк более 1000, то тормозит и чем дальше в плюс от 1000 тем хуже, ждать выполнения устанешь     | |||
| 26
    
        Zamestas 12.11.17✎ 23:10 | 
        (0) А 1С точно для это нужна?     | |||
| 27
    
        SiAl-chel 13.11.17✎ 08:52 | 
        (0) А зачем конфигурация, если судя по описанию задачи, можно всё сделать на форме внешней обработки, которая может использоваться в любой конфигурации?     | |||
| 28
    
        1Снеговик гуру 13.11.17✎ 09:13 | 
        (21) "а исполнение кода в линейном синхронном стиле будет замедленно из-за беготни между контекстами"
 Так работай в серверном контексте, кто не дает? И сравни сначала с беготней и без беготни, потом утверждай. | |||
| 29
    
        1Снеговик гуру 13.11.17✎ 09:14 | 
        Потом это все дела захочется на сервер перетащить, и все переделывать-переписывать.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |