0xd34df00d
03.05.2012 17:50 Azoth_primary
Вместо того, чтобы готовиться к завтрашнему зачету по философии, сделал получение альбум-арта для альбомов, у которых он не определился автоматически. Арт качается с last.fm в наилучшем разрешении.
Картиночки таки сохраняются в отдельных потоках (по потоку на картинку, тредпул), поэтому я могу наблюдать, как личкрафт иногда загружает 6-8 ядер сразу на полную, если попалось сразу несколько больших картинок. Годнота.
Recommended by:
@pooq: моча съела говно
а вот ограничение-то запилить было бы не лишним. Не у всех есть 8 ядер в свободном полёте, чтобы отдать их личкрафту
это хорошо, что личкрафты грузят все ядра на полную?
Да. Это значит, что в век многоядерных процессоров личкрафты действительно используют все возможности твоей машины.
Системный тредпул такой системный.
я вот как-то не уверен, что хочу, что бы плеер грузил 8 ядер. Вот совсем :-(
мнение дедфуда: пришло время купить ещё процессор и оперативки, они сами не купятся :)
Если у тебя есть восемь ядер, то почему бы их не загрузить разок?
Олсо, оказыается, это был мой факап, и на самом деле просто столько данных приходить не будет. Бдует в среднем грузиться 1-2 ядра максимум.
А в чем проблема-то? У тебя процессор многоядерный для членомерянья, или чтобы хорошо параллелизуемые задачи он решал быстрее?
решал те задачи что хочу я, и когда хочу я. А не когда личкрафты захотели нагрузить его своим ёбаным выкачиванием картинок
у меня всего 2 ядра. И у меня kdevelop запущен, и ff. И на всех моих 2-х ядер не хватит, если из-за личкрафтов у меня будет тормозить все остальное
Особые бугуртсмены смогут отключить автовыкачивание картинок в настройках, ну.
И да, что ты хочешь, чтобы они грузили одно ядро полчаса, или 4 ядра 7 минут?
Значит, будет сохраняться в два потока, все ок. Там пиками же.
я хочу иметь возможность указать сколько ядер и как грузить. И желательно не выёбываясь с цгруппами и улимитами при этом (алсо, вот из-за таких как ты их и запилили)
Окей, с тебя патч, чтобы вместо QtConcurrent::run юзать самописный тредпул с возможностью ограничения количества потоков.
конечно же, вместо того, чтобы запилить каунтер запущенных закачек надо пилить свой самописный тредпул. Типикал плюсоблядское мышление :)
Закачка ≠ процесс сохранения. Может качаться сразу три файла, например, а сохраняться по одному за раз. Но, конечно, костыль-велосипед @mva виднее.
Кроме того, @mva не знает, что LMP может укачивать обложки из сразу нескольких источников (если стоят соответствующие плагины), и что делать тогда? Делать глобальный каунтер закачек альбум арта?
>LMP
>плагины
ТЫ ЧТО НЕСЕШЬ, БЛЯДЬ?
Кроме того, я вполне допускаю задачу, когда на машине с 100-мегабитным каналом, но каким-нибудь говноатомом с минимальной частотой сохранение будет выполняться дольше, чем закачка. И что тогда, соснули?
Че.
я походу не распарсил. Ты же про просто плагины, а не плагины для лмп?
Да. Плагины, реализующие Media::IAlbumArtFetcher. Сейчас его реализует только LastFMScrobble.
ох блядь...аа..это же тред о личкрафтах. Это нормально
а какого, прости, хера скачивание картинок занимает 100% CPU на такой промежуток времены чтобы это можно было заметить глазами?
Не скачивание, а сохранение. Лаги в 100-120 мс уже вполне заметны.
а что ты такого с ними делаешь при сохранении? на тупом дисковом IO тоже скачков использования CPU тоже быть не должно
Сохрани PNG 1600x1600 объемом под десяток метров с максимальной компрессией, а я на тебя посмотрю.
нахуй так жить^W^Wих пережимать?
Потому что контекст теряется при передаче между плагинами. Иное решение плохо пахнет.
какой ещё контекст? при чём здесь он?
Получением картинок занимается один плагин, а их обработкой — совсем другой.
и что? в твоей охуенной архитектуре у плагина нету возможности скачать картинку просто как бинарный файл?
Есть, дело не в скачивании.
пиздец.
Щто.