Загрузка ЦП приложением

Создание приложений, библиотек, инсталляторов
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Загрузка ЦП приложением

Сообщение Borjomy_1 »

Уже не первый раз замечаю медленную работу с форматированием ячеек таблиц, листбоксов из-за "поячеечной" обработки. Искал возможность "заморозить" обновление таблицы на время форматирования ячеек, не тормозя остальной интерфейс. За deferpanelupd спасибо, возьму на заметку
Так выносите форматирование таблиц в отдельный цикл и передавайте туда данные нотификатором! Это первое. Второе. Если данные не всегда обновляются, то имеет смысл производить проверку, новое и старое значение ячейки совпадает? Если да, то не записывать. Это пропорционально уменьшает загрузку.
Ну и радикальное решение - не использовать микрософтовские компоненты. Это листбокс, трей и таблицы. В конце концов чем вам массивы строк и чисел не угодили?
Аватара пользователя
Vitekkz88

Activity Silver Автор
expert
expert
Сообщения: 1100
Зарегистрирован: 21 янв 2014, 15:45
Награды: 3
Версия LabVIEW: 12,13,14
Откуда: Томск
Контактная информация:

Re: Загрузка ЦП приложением

Сообщение Vitekkz88 »

VladosXPOM писал(а):Уже не первый раз замечаю медленную работу с форматированием ячеек таблиц, листбоксов из-за "поячеечной" обработки.
Дело в том, что в LabVIEW перерисовывается весь интерфейс, а не отдельный элемент(если ошибаюсь - мэтры меня поправят). Поэтому когда Вы хотите, к примеру, разукрасить 50 ячеек - это означает что Вы 50 раз перерисуете интерфейс. По-моему аналогично и с обновлением значений в индикаторах. Обновляя значение в одном индикаторе, в других значения так же обновляются.
Инженер - это открыто светящийся интеллект, свободный и не обидный юмор, это легкость и широта мысли...Это воспитанность, тонкость вкусов, хорошая речь, плавно согласованная и без сорных словечек...
-А. И. Солженицын
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Загрузка ЦП приложением

Сообщение Borjomy_1 »

По-моему аналогично и с обновлением значений в индикаторах. Обновляя значение в одном индикаторе, в других значения так же обновляются.
NI-шные индикаторы практически не жрут ресурсы при перерисовке, в отличие от микрософтовских и NI-шных на их базе.
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Загрузка ЦП приложением

Сообщение dadreamer »

Borjomy_1 писал(а):Ну и радикальное решение - не использовать микрософтовские компоненты. Это листбокс, трей и таблицы.
Borjomy_1 писал(а):в отличие от микрософтовских и NI-шных на их базе.
Почему вы называете их "микрософтовскими"? На Маке и Линуксе разве другие контролы? А что тогда .NET/ActiveX компоненты (RichTextBox и иже с ними)?

VladosXPOM, так всё-таки проблема именно в "разрисовке" таблиц, а не в Elapsed Time?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Загрузка ЦП приложением

Сообщение dadreamer »

Vitekkz88 писал(а):По-моему аналогично и с обновлением значений в индикаторах. Обновляя значение в одном индикаторе, в других значения так же обновляются.
С индикаторами чуть иначе: http://labviewportal.org/viewtopic.php?p=69073#p69073
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Загрузка ЦП приложением

Сообщение Borjomy_1 »

Почему вы называете их "микрософтовскими"?
Да потому что NI-шные трей, листбокс и табле - это обертка вокруг микрософтовских компонентов. У них совпадает практически все, вплоть до методов (таких дурацких методов еще поискать. сам черт ногу сломает, пока разберется. Сразу видны шаловливые ручки MS). И обертка корявость компонента никак не исправляет.
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Загрузка ЦП приложением

Сообщение dadreamer »

Borjomy_1 писал(а):
Почему вы называете их "микрософтовскими"?
Да потому что NI-шные трей, листбокс и табле - это обертка вокруг микрософтовских компонентов. У них совпадает практически все, вплоть до методов (таких дурацких методов еще поискать. сам черт ногу сломает, пока разберется. Сразу видны шаловливые ручки MS). И обертка корявость компонента никак не исправляет.
Хочу пруф, если можно... :) Ибо откуда тогда кросс-платформенность :vi: с таблицей/листбоксом.
Ответить

Вернуться в «Создание приложений»