Вверх ↑
Администрация
Ответов: 15295
Рейтинг: 1519
#1: 2016-12-14 14:52:10 ЛС | профиль | цитата
igr, поковырял немного схему: падение с ошибкой происходит из-за расходования всех ресурсов GDI (графическая подсистема древних Windows). Практически все нестандартные элементы среды для своей отрисовки резервируют ресурсы этого самого GDI - шрифты, кисти(заливка), карандаши(рисование линий) и т.д. - поэтому переполнение схемы такими элементами рано или поздно приводит к проблеме (скажем достаточно создать много LineBreak). Исправить это без переделывания всего графического движка невозможно. Хотя и возможно было бы улучшить ситуацию, если использовать общие ресурсы между элементами.

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



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

И наконец попробовал открыть схему в Hion:



Открывается конечно же дольше, чем в HiAsm - примерно пол минуты. Зато выделенный кусок схемы копируется примерно за 4 секунды и соответственно никаких падений вкладки браузера нет, 100 000 элементов держит без проблем:



Очевидно, что тут все ограничено исключительно объемом памяти, доступной браузеру.
карма: 27
1
Голосовали:igr
Редактировалось 1 раз(а), последний 2016-12-14 14:53:02