Re[8]: Свежак из Телеги
От: Философ Ад http://vk.com/id10256428
Дата: 31.05.25 13:13
Оценка:
Здравствуйте, Артём, Вы писали:

Аё>Здравствуйте, Философ, Вы писали:


Ф>>А какое отношение имеет BigO к вытягиванию 100 млн строк в гуй?

Аё>Прямое. Виртуальный список- это когда рендерится только видимая пользователю часть элементов. Просчитать смещение (для скролла) видимого элемента без фиксированной высоты каждого элемента- это тебе не жсоны перекладывать.

Там этого не нужно было: фрэймворк определяет видимость элемента, он же скролл рисует — там DataGridView изначально был, он предоставляет всё, что нужно. Да даже если делать такой контрол руками (с ручной отрисовкой), то определить видим он или нет, и где скролл можно без всяких BigO. Точно также никакого труда не составляет определить контрол, который нужно показывать по позиции скролла.

Поверь мне на слово, сделать кастомную релизацию IList над таблицей в БД, так чтобы всё это в сумме не тормозило, значительно сложнее. BigO там может пригодиться, но можно обойтись и обычным здравым смыслом. Попробуй сам такое спроектировать, просто учти, гуй нельзя тормозить вообще — а) твой List должен быть потокобезопасен, б) не нужно на каждый чих в БД лезть, в) в табличку пишут — тебе придётся придумать механизм инвалидации кэша.
Всё сказанное выше — личное мнение, если не указано обратное.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.