Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"Заморозка" интерфейса в момент загрузки большого каталога из файл-листа пользователя #746

Open
pavel-pimenov opened this issue Aug 21, 2015 · 4 comments

Comments

@pavel-pimenov
Copy link
Owner

@pavel-pimenov pavel-pimenov commented Aug 21, 2015

From Pavel.Pimenov@gmail.com on March 06, 2012 05:58:56

При наличии в каталоге более 3000 файлов наблюдается .

Причина в методе
void QueueManager::add(const string& aTarget, int64_t aSize, const TTHValue& root, const HintedUser& aUser,Flags::MaskType aFlags, bool addBad)

Он зовется в цикле для каждого файла в загружаемой директории.

  1. На каждом файле вызывается
    ConnectionManager::getInstance()->getDownloadConnection(aUser)
  2. Если активна галка AUTO_SEARCH по каждому ТТХ выполняется еще и поиск через вызов:
    SearchManager::getInstance()->search(TTHValue(root).toBase32(), 0, SearchManager::TYPE_TTH, SearchManager::SIZE_DONTCARE, "auto");

Original issue: http://code.google.com/p/flylinkdc/issues/detail?id=707

@pavel-pimenov
Copy link
Owner Author

@pavel-pimenov pavel-pimenov commented Aug 21, 2015

From Tirael...@gmail.com on March 06, 2012 03:48:26

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

@pavel-pimenov
Copy link
Owner Author

@pavel-pimenov pavel-pimenov commented Aug 21, 2015

From Pavel.Pimenov@gmail.com on March 06, 2012 22:25:43

Исправлено... часть 1 r9478 p.s.
Оказалось, что очередь создается
но открыть ее и посмотреть не получается
т.к. визуальный компонент не может осилить большое кол-во файлов.
Продолжаем работать...
Вероятнее всего будет забирать для визуализации часть файлов. (1000-3000)
остальные будут лежать в базе данных и докачиваться по мере обработчик очереди в памяти.

p.s.
Про заморозку в окне поиска посмотрю тоже,
Спасибо за тестирование.

@pavel-pimenov
Copy link
Owner Author

@pavel-pimenov pavel-pimenov commented Aug 21, 2015

From avgust.m...@gmail.com on April 08, 2012 15:13:33

"видимо из-за того что обрабатывает всплывающее меню для каждого файла."

какой ужас ((

@pavel-pimenov
Copy link
Owner Author

@pavel-pimenov pavel-pimenov commented Aug 21, 2015

From a.rain...@gmail.com on May 02, 2012 05:01:13

Labels: Milestone-Release502 Component-Logic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant