- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
def run(self):
count = 0
while True:
if count < 5:
self.saveUsers(self.queue.get())
count += 5
else:
GlobalConfig().setUsers(self.db.selectUsers())
count = 0
self.db.close()
P.S. А бул и правда не нужен:
Правда, self.db.close не выполнится ни при каком раскладе.
А если queue - это синхронная queue, умеющая приостанавливать поток, то и базу особо насиловать не будет...
то как оно сверху оно конечно сафсем гавно, но знаю пару челов которые такое спокойно напишут с switch/case'ом и count'ом прыгающим между 0 и 1. если их спросить "ы?" как правило отвечают "а вдруг еще что-то надо будет в цикл добавить."
в общем, я думаю что это уже второе поколение программистов растет которое не умеет пользоватся машинами состояний. позже они их сами изобретают - и код вырождается в нечто подобное вышеописанному.
Для нелюбителей есть возможность передать аргументы телу потока.
Для параметров есть дополнительные параметры args и kwargs. Наследование Thread - явоидное говно, связанное с тем, что java cannot into closures. В фитоне не нужно. Назовите хоть одну причину, зачем это нужно.
Навскидку: в нескольких точках программы создаем однотипные потоки. Можно вынести код создания потока в функцию-фабрику, а можно отнаследоваться и задать параметры потока (например тот-же daemon) в конструкторе.
Или если поток должен работать со слабой ссылкой на внешние данные, то при передаче параметров эту самую ссылку придется создавать вызывающему, а при наследовании эти данные можно бросить как есть конструктору: он создаст слабую ссылку, сохранит в поле, а его собственная сильная ссылка исчезнет, когда конструктор завершит работу.
Вообще я применяю оба подхода: стандартный Thread для разовых действий, наследование для ситуаций с несколькими однотипными потоками-worker'ами.
Кстати, можно было бы писать
если бы в питоне лямбды нормально работали.
Да ну как это?
http://rghost.ru/45060024.view
Это в версии 1.8?
? превращает в
Упс, спалился. Вредно писать в одно окно код, а в другое говнокод. Языки начинают влиять друг на друга.
я это тоже подметил, но не стал спугивать клиента
один уже по уши в крестах, другой измазался в православном стиле
так победим!
и только некоторые сатанисты прелюдно порицают, но сами продолжают брезгливо этим заниматься на скотном дворе, в говне, с гандонами из свиной кишки, и походу, гордятся этим
крестоносцы начали крестовый поход во имя веры
они несут её в массы
Ололо жавамакаки, им язык нормально писать не дает, так они придумывают свои define с замыканием на одну ide.
Это фолдинг обычный.
> им язык нормально писать не дает
Иди лучше продолжай портировать на 3-ю версию.
Похуй, что это, главное, что работает в одной IDE.
>Иди лучше продолжай портировать на 3-ю версию.
Да у тебя же C#.
А мне лично ничего своего портировать не надо. Тут у других проблемы есть, вроде того, что в XBMC стоит питон 2,6 и попробуй этих макак уговори хотя бы 2,7 поставить, чтобы json искаропки был.
С чего ты взял?
В NetBeans тоже похожее запилили. В эклипсе плагин есть.
>Да у тебя же C#.
У меня обратно совместимая Java. Именно шарперам и надо больше остальных думать о установке новых .net.
Фолдинг можно настроить в любой среде, даже в notepad++.
http://lambda4jdt.googlecode.com/files/screen2b.gif
Пофиксил. Трахайся дальше.
----
А, так фолдинг - это просто скрытие "нинужного" текста? Жавамакаки, по костыльности вы уделали, все, что я до этого знал.
Если тебе посреди квартиры насрать, то ты газеткой накроешь и будешь вокруг ходить? Ололо, ололо.
>А, так фолдинг - это просто скрытие "нинужного" текста
Омг. На говнокоде только что было совершено эпохальное открытие!
А когда пифон из одной строчки тебе сгенерирует тормозную кучу нативного говнокода, ты тоже туда лезешь дизасмом и смотришь?
Любая макака должна понимать, что у языков есть сфера применения и работу с бинарными данными фитону лучше не доверять. Однако, пока в жабе думали, что поддержка foreach, появившегося в 2004 году, нинужна, фитон с 2004 развился очень и очень сильно и вообще стал похожим на язык, а не на нагромождение дико текущих абстракций, которые без знания деталей реализации невозможно понять. А вот жавоиды до сих пор в стазисе сидят.
>Любая макака должна понимать, что у языков есть сфера применения
Этот аргумент применяется обычно когда маячит слив в споре.
И в данном случае действительно бессмысленно сравнивать динамику со статикой. Думаю ты и сам это понимаешь.
Где замыкания?
Где лямбды?
Где литералы для хеш-массивов?
Классы - не first class object.
Кое-кто до сих пор принципиально не поддерживает foreach, появившийся в 2004.
Где хеш-аргументы?
Где switch с любым хешируемым типом (о да, string захуярили в 1,7, говоришь? когда это было)?
Где properties? Геттеры/сеттеры генерировать не заебешься?
>И в данном случае действительно бессмысленно сравнивать динамику со статикой. Думаю ты и сам это понимаешь.
Отлично, половина из вышенаписаного есть в C#.
Когда уже из питона GIL выпилят?
Уже достигли максимального отступа?
Чтобы распараллелить питоний код просто перепишите его на си.
Пардон, а чего ты хочешь от динамического языка? Скорости? Питоний код тормозит так, что параллелизацией не всегда спасешься. И да, проблема есть, но мне лично не мешает - я на нем хайлоад не пишу. Для хелловорлда по всякому лучше явы.
>Где лямбды?
С 96-го года. Называется anonymous class.
>Кое-кто до сих пор принципиально
Кто?
>не поддерживает foreach, появившийся в 2004.
Какой foreach?
>(о да, string захуярили в 1,7, говоришь? когда это было)?
Зря кстати.
>Где switch с любым хешируемым типом
Не нужен. Нужен нормальный свитч с диапазонами.
>Где properties? Геттеры/сеттеры генерировать не заебешься?
Сахар. Не нужно.
>Отлично, половина из вышенаписаного есть в C#.
Всё, и даже больше есть в скала.
Кстати он (mono) по скорости сливает не только JVM, но даже компилированому js.
КОСТЫЛЬ. Слив #1
>Кто?
http://forum.vingrad.ru/index.php?showtopic=348566&view=findpost &p=2474183
На, сосни.
>Зря кстати.
Ну вот и пушка. Как на рнр сидят нубы, так на яве сидят тормоза.
>Не нужно.
Это линуксоидное "кококо нинужно", когда нинужен, например, флеш и другие вещи, которых нет или они работают хуево?
>Всё, и даже больше есть в скала.
Функциональное говно. Вот оно как раз не нужно.
И что это значит?
Ссылка на какой-то говнофорум в качестве пруфа.
>Это линуксоидное "кококо нинужно"
Тебе объясняют что такой свитч не нужен (хоть даже его сделали, я не пользуюсь - какой-толк?)
Нужен по диапазонам. А вот его как раз нету.
>Ссылка на какой-то говнофорум в качестве пруфа.
Дыбилушка, может ты пойдешь туда и почитаешь? Или тебе няньку приставить надо, чтобы за тбя читала?
>Нужен по диапазонам. А вот его как раз нету.
Где мне это обьясняют?
> я не пользуюсь
А вот это многое обьясняет. Хочешь свой язык с блекджеком и шлюхами - пили его сам.
>>Функциональное говно. Вот оно как раз не нужно.
Ты явно сумашедший.
В чем костыль? Одни "ололо" и "кококо" ни одного аргумента.
> слишком функциональное говно.
Это эмоции. Каков четкий критерий между "слишком" функциональным и "не слишком"?
Я так до сих пор и не услышал внятного ответа на свои вопросы и вообще какой-либо логики.
Вы сейчас напоминаете мне гуру питона, который объединил в одном посте "джава-хуесосов" и "Apache Hadoop".
Что в яве "нинужно"? foreach? Или лямбды?
К чему ты вообще упомянул 2004 год?
По крайней мере в яве он работает адекватно.
Вот тебе foreach по массиву! Вот тебе замыкание в бороду! Вот тебе сишарп под ребро!
http://ideone.com/5jaP3s
>Прочти по ссылке выше
Не нужны мне что кто-то где-то в интернете что-то сказал.
Это чужие мнения. Не надо за них прятаться.
Если ты знаешь проблему foreach - приводи пример.
http://forum.vingrad.ru/index.php?showtopic=348566&view=findpost &p=2474183
Твой foreach соснул:
>http://ideone.com/5jaP3s
Рекомендую сделать то же - работающий пример на ideone или lws.
http://ideone.com/8jXdm1
Просто нужно знать эту особенность.
Да нихера ты не понял.
>http://ideone.com/5jaP3s
>http://ideone.com/8jXdm1
Два одинаковых замыкания, а работают по разному.
В яве вот кода больше, но сразу понятно что происходит.
Отсюда повторяю изначальную мысль, которую пытался донести сверху треда: лучше иметь свёрнутый код, и возможность посмотреть как оно внутри, чем такой убогий и неочевидный for-each.
Проблема ровно одна: ты долбоёб с пафосом рассуждающий о замыканиях и for-each.
И в тоже время не можешь разобраться с простейшим примером.
Проблема в (замыканиях+foreach)
Не насторожила переменная j во втором примере:?
>Позднее связывание, как в питоне?
Но там-то введение дополнительной переменной никак не меняет картину:
http://ideone.com/lS5DWl
В сисярпе я не пиздец как силен.
Фолдинг есть даже на говнокоде!
Конечно. Убирать говно я не буду. Его надо оставить чтобы натыкать туда носом того кто насрал.
Накрою газеткой, потом найду того кто это сделал и заставлю убрать.
Наверное это твоё, вынужденное по жизни терпильское занятие - убирать чужое говно. Гы-гы.
Вот ты обосрался с фолдингом, этого никто убирать не будет, но я буду тыкать тебя лицом в твои же фекалии, как шкодного кота.
>А, так фолдинг - это просто скрытие "нинужного" текста?
http://govnokod.ru/12855
Ну вот, собственно фолдинг во всей красе.
>http://govnokod.ru/12855
>Ну вот, собственно фолдинг во всей красе.
И нахуя ты это здесь запостил? Скажи пожалуйста.
Твоё унылое питоньё говно прикрыли. Чтоб не воняло. Понятный даже идиотам пример приносимой фолдигом пользы. А вот еще один:
http://govnokod.ru/12317#comment174366
>И где же я обосрался?
Внимательно смотри сюда:
>"главное, что работает в одной IDE."
Питонье говно прикрыли? Вахахахаха, посмотрите, какой буйный. Из нормальных языков говно удаляют, а не газеткой прикрывают. Для буйных идиотов - газетка была метафора для фолдинга, а ты не въехал и на питон ее переклеил, бедненький.
Странно. Вот почему-то на этом сайте у адептов питона и сисярпика посты такие будто их писал агрессивный школьник...
>газетка была метафора для фолдинга, а ты не въехал и на питон ее переклеил, бедненький.
Я привел пример, даже джва - как это бывает в жизни, а не в твоих метафорических фантазиях.
Да потому что это и есть агрессивный школьник, оправдывающий "говнистостью" своё неосиляторство предмета.
Как и любой живой язык. Многие вещи, кстати, в Java были изначально правильно сделаны, а в питоне появились лишь в третьей версии (внятное разделение разделение сырых бинарных массивов и юникодных строк, к примеру).
У современной тройки проблем на порядок меньше. В питоне одна из главных проблем - слишком большая динамичность, замедляющая переход с двойки.
Исправил. Не благодари.
Ъ
Ставлю. Главное не забыть. А ещё какие фолдинги она умеет? Это без доп. плагинов?
Среда
Интегрированной
Разработки
Ориентированных
Программ
Думаю, Тарас одобрит
Удачно. Сироп ассоциируется с синтаксичесим сахаром.