![]() |
|
Модераторы: Akina |
![]()
|
|
| scull |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.7.2006 Где: СПБ Репутация: нет Всего: нет |
Имеется таблица в Excell (700x8), в проге работа с ней ведется командами типа:
Создаю массив (700x8) и всю таблицу переношу в этот массив, т.е. команда меняется так:
Вопрос такой: Сильно ли повысит эта операция скорость записи/чтения и проверки условий данных? P.S. Грузится программа будет долго, но меня это не беспокоит. По окончании работы с программой, массив пишется обратно в файл. Это сообщение отредактировал(а) scull - 22.2.2007, 14:16 |
||||
|
|||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Планируешь работать с переменными типа Var.
Хм... Очень медленно работает с подобными переменными бейсик... Да и памяти будет жрать подобный массив порядочно. А вдруг будет своп на диск... Хотя... Вряд ли. По-моему изгалятся не имеет смысла. |
|||
|
||||
| Black_Star |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 192 Регистрация: 9.9.2003 Где: Minsk Репутация: 4 Всего: 4 |
А по-моему стоит. Всякие операции, которые выполняются с памятью на порядок выше, чем считывать/записывать на веник.
То, что жрать будет память.... 700*8*8*50 (если длина записи 50 и тип Variant) = 224000=2 Мб. И это по сравнению со всей оперативкой? Мелочь... А вот что медленно вары обрабатываются это 100% точно. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
На самом деле файл Эксельный будет закэшен, так что нечто вроде
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| scull |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.7.2006 Где: СПБ Репутация: нет Всего: нет |
На счет Var согласен - может быть тогда перед заносом в память определять тип переменной и в соответствующую ячейку массива, настроенный под этот тип данных - Должно работать быстрее?
2 Akina Пробовал такой подход, вот только запросов на эти данные достаточно много, да и надо все время следить за With, а когда файлов открывается три а не один, начинается полный абзац. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
В таком случае я бы пошел по пути открытия файлов как ODBC-источников данных... фактически то же "копирование в память с кэшированием", но неиспользуемые блоки считываться не будут. Впрочем, так и осталось неясным - в столбцах таблиц находятся разнородные данные или они структурированы? иными словами, оправдано ли использование Variant? -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| scull |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.7.2006 Где: СПБ Репутация: нет Всего: нет |
2 Akina
Понял, что не оправданы... избавился от Var Всем спасибо за помощь! |
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |