![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Illusion Dolphin |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 36 Всего: 63 |
Я заношу из базы данных в TListView данные, и подгружаю к итемсам картинки. Сначала я всё делал в основном потоке, и ошибок не взникало, но было подтомраживание, неудобсва, поэтому я решил вынести часть кода, который загружает картинки, в отдельный поток. Тут и полезла одна ,но очень странная ошибка: EOutOfResources with message 'The reauested resource is in use'. Если во время загрузки ничего не делать с TListView , то вроде всё нормально, но если его скроллишь, или ещё что-нибудь делаешь (толком я не понял), то иногда возникает эта ошибка... Судя по тексту ошибка может тут поток юзает что-то, пока это занято основным потоком? Но что?
Привожу мини-приложение, где возникает ошибка (есть только это, ничего не вырезал на всякий случай)
и сам поток:
ошибка вылетает в addimagetolist, но компилятор её не отлавливает толком, только изза секции try можно мпонять, что ошибка возниикает именно там. Я вроде бы выполнил Synchronize, но что-то тут ещё... Люди, помогите!!! -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
||||
|
|||||
| Illusion Dolphin |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 36 Всего: 63 |
Эх, никто не в курсе... Пришлось разбираться самому. Для тех, кому интересно, что же тут было: всё исправилось изменением процедур в нити:
и
Но интересно, как же классифицировать ошибку... Прошлый глюк бы по-моему из-за следующего: при изменении в имэйджлист, как то добавлении лементов), перерисовывалось одновременно содержимое листвьюва, причём это присходило с помощью внутренней процедуры имэйджвьюва change, которая было объявлена как динамическая... По-моему метод синхронизе не очень точно работал с этим динамическим метедом и иногда из-за этого и происходила ошибка. при использовании ImageList_Add имэйджлист не вызывает метод change, и ошибка пропадает... -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
||||
|
|||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |