anonymous@RULINUX.NET~# | Last login: 2024-11-04 22:27:16 |
Регистрация Вход | Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск |
Форум - Talks | [RSS] |
Вот решил начать изучать линуксовые тулкиты. От внутренностей gtk сразу проблевался. И с англишом у меня туго, да.
И поэтому решил пойти путём той эльфийки, виртуалом которой я тут являюсь. А именно, начать изучать куйти. Надёргал доков, есть даже хорошие и на русском. Наляпал форму, потыкал мышой по кнопочкам. Ощутил себя гением быдлокодерства. И тут пришла мысль заюзать этот чёртов копро-QTimer.
Нахуярил их аж 5 штук, подключил к лаблам, типа такой вот счётчик таймер получился. С 10-го раза скомпилил, запустил. И что же я вижу, блджад? Это УГ отжирает 80% от моего сверхмощного core duo. ололол! И это УГ кто-то ещё юзает на смартофонах, позор, товариши. Теперь понятно, почему анальный ведроид так быстро всех объебал.
Да, конечно, мну бешено негодует и смотрит на ноклу как на говно. Ололол, дискас.
Алсо, что бы не быть голосовым, вот вам паста взгугленная из под труполора
Silvy(*) (2011-03-25 22:27:00)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15
|
|
|
Скрыть
Re: А почему Qt такое УГ?у таймера стопудово должен быть механизм уменьшения скорости реакции. это не свойство куты, это общее свойство всех таймеров, делающих что-то по времени. если ты посмотришь код SDL, то там прямо написано: по умолчанию наш мейнлуп архиотзывчив, и кушает сколько дадут. посылайте принудительно команду wait. lockywolf(*)(2011-03-25 22:37:19)
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 |
Скрыть
Re: А почему Qt такое УГ?>у таймера стопудово должен быть механизм уменьшения скорости реакции.
Ололол, да не смеши меня. Линукс буквально нашпигован всякими таймерами, лол. Если каждый будет жрать по полпроца, то это пиздец настанет всему в этом мире, блджад. Алсо, отсчитать 30 милисекунд выглядит смешно для проца, у которого одна тактовая за 2 гигагерца. Ну и как водится, мне непонятно, куда пихать этот wait. Может и правда есть решение для этого кривожопистого куйтэ? Silvy(*)(2011-03-25 22:44:28)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
vilfred(*)(2011-03-25 22:46:06)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16 (.NET CLR 3.5.30729) |
Скрыть
Re: А почему Qt такое УГ?>А у меня твой код отожрал всего 20% старого одноядерного селерона.
И что? Какие-то два таймера полностью сожрали 300 мегагерцовый проц, лол. Да я раньше на таком железе слущал музыку и гонял порно одновременнно. И это не считая запущенный вендоуз. Алсо, у меня mplayer жрёт 10%. С таймерами точно не сравнить. Silvy(*)(2011-03-25 22:48:06)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?>И что? Какие-то два таймера полностью сожрали 300 мегагерцовый проц, лол.
|
Скрыть
Re: А почему Qt такое УГ?>Сделал в цикле i < 50 - получилось 35%. Странный этот qtimer всё-таки.
|
Скрыть
Re: А почему Qt такое УГ?>Вот такое есть, но оно бесполезно:
Там походу диагноз. Видимо это такое проклятье, видеть истинную причину всего УГ. Silvy(*)(2011-03-25 23:41:13)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?А что у тебя происходит? Ты в цикле насоздавал 10 таймеров, которые каждые ~35 миллисек издают сигнал timeout() по которому ничего не делается. Так? |
Скрыть
Re: А почему Qt такое УГ?Если чо, это был намёк на то, что у тебя программе что-то другое жрёт процессор |
Скрыть
Re: А почему Qt такое УГ?>Ты в цикле насоздавал 10 таймеров, которые каждые ~35 миллисек издают сигнал timeout() по которому ничего не делается. Так?
Исходник я для кого выложил? Silvy(*)(2011-03-26 00:45:16)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?>Если чо, это был намёк на то, что у тебя программе что-то другое жрёт процессор
Это не у меня, а у ноклы. Есть такой крап, куйтэ называется, лол. Silvy(*)(2011-03-26 00:46:28)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?> Исходник я для кого выложил?
Создай 1 (один) таймер в цикле - какой будет результат? |
Скрыть
Re: А почему Qt такое УГ?А-а, я кажется понял. Замени timer->start(30 + i); на timer->start(30); |
Скрыть
Re: А почему Qt такое УГ?>А-а, я кажется понял. Замени
Ты открыл для себя оптимизацию, лол. Ёжику понятно, что в недрах куйти создаётся один таймер, если всем им указать один таймоут, блджад. Silvy(*)(2011-03-26 01:14:19)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?Молодец. Теперь сосредоточься и развей свою мысль на случай с десятью таймерами с учётом проблемы на которую тебя посылал SystemV |
Скрыть
Re: А почему Qt такое УГ?>Молодец. Теперь сосредоточься и развей свою мысль на случай с десятью таймерами с учётом проблемы на которую тебя посылал SystemV
И что ты хочешь сказать? 10 таймеров жрут полпроца и это нормально? Тут явно доктор нужен. Silvy(*)(2011-03-26 01:21:24)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?> И что ты хочешь сказать?
> 10 таймеров жрут полпроца и это нормально?
Ну так ты бы ещё написал вместо того цикла вот такой: for(int i = 0; i < 10;); И создавай потом треды: а почему буква "i" такое УГ!? |
Скрыть
Re: А почему Qt такое УГ?>А как ты думаешь?
Я думаю, что ты слишком толст. >Ну так ты бы ещё написал вместо того цикла вот такой: for(int i = 0; i < 10;);
Тогда while(1); Быдлокод тут не катит, да. Silvy(*)(2011-03-26 01:39:13)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?> Я думаю, что ты слишком толст.
> Тогда while(1); Быдлокод тут не катит, да.
|
Скрыть
Re: А почему Qt такое УГ?>В этом нет ничего страшного, я ведь не собираюсь брать тебя в жёны.
А я вот как раз собираюсь. Люблю толстеньких. >Ты отклоняешься от размышления о причинах своей проблемы с таймерами.
Было бы с кем размышлять. А тут похоже одни кути-дрочеры собрались, лол. Silvy(*)(2011-03-26 01:47:54)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?> А я вот как раз собираюсь. Люблю толстеньких.
> Было бы с кем размышлять.
|
Скрыть
Re: А почему Qt такое УГ?>Надо же какая шалунья, уже и в жёны собирается!
Чур я сзади! >Со своим мозгом размышляй же.
На лицо очередной фейл ноклы. Или ты что-то хочешь добавить? Silvy(*)(2011-03-26 02:00:43)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
Скрыть
Re: А почему Qt такое УГ?> Чур я сзади!
|
Скрыть
Re: А почему Qt такое УГ?Несмотря на то, что Qt моя любимая технология, но тут я согласен с мандрявым. Я тоже в свое время с этим таймером помудохался нехило. |
Скрыть
Re: А почему Qt такое УГ?Судя по поведению, QT создаёт один таймер, который дёргает все объекты QTimer. И если подёргивания таймеров идут через миллисекунду - он не вылезает из хардлупов. А про хард-лупы них несколько баг-репортов про это есть, на один из них приведена ссылка выше. |
Скрыть
Re: А почему Qt такое УГ?Ты в этом уверен? Сделай через 50 мс, такая же хуйня, только в профиль. Алсо вот выгуглил http://labs.qt.nokia.com/2008/08/22/rant-desktop-effects-never-more/ Надо юзать QT_NO_GLIB. Правда в кедах после такого грязного движения жопой перестал работать звук, лол. Silvy(*)(2011-03-26 19:27:25)
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15 |
|
|
|
Этот тред читают 1 пользователь: |
Анонимных: 1 Зарегистрированных: 0 |
Re: А почему Qt такое УГ?
Алсо, пришлось убрать занки < > из #include Но это уже исключительно по причине рукоизжопистого движка, лол.
Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.2.15) Gecko/20110304 Mandriva Linux/1.9.2.15-69.1mib2010.2 (2010.2) Firefox/3.6.15