![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||||
|
||||||
![]() Здравствуйте. Мне периодически нужно распознавать пачки картинок (что на них изображено) Использую Яндекс.картинки для распознавания. Написал небольшой парсер - кинул на форму twebbrowser и пару memo - для входных ссылок и выходных слов.
Примерно так: Код:
Код:
Код:
Вроде как все работает, но есть пару моментов: - Можно ли как-то ускорить работу, не прибегая к многопоточности (я пробовал искать в нескольких потоках, но тогда периодически банят и нужно вводить капчи). - Программа по ходу поиска новых картинок отжирает все больше памяти. Допустим найти 64 штуки обходится в 800-900 Мб, а если около сотни то может и вылететь с ошибкой о том, что недостаточно памяти, когда используемая память достигает 1.3-1.4 Гб (при этом на компьютере 16гб). Что можете посоветовать? |
#2
|
|||
|
|||
![]() По поводу нажора памяти. Похоже, twebbrowser просто не освобождает память (такое наблюдается и в обычном IE). Так что тут только один рецепт - освобождать компонент и создавать его заного. Ну или попробовать перейти на Chromium.
По поводу недостаточности памяти - похоже, что у тебя приложение 32-bit, оно по умолчанию не может взять более 2 Гб памяти (это всего, не забывай, что часть адресного пространства занята образами системы, так что как раз тебе и остается около 1.5 Гб). С помощью разных ухищрений можно увеличить лимит до 3 Гб. Кардинальное решение - переход на 64-bit. |