gentoo.ru
python
python@conference.gentoo.ru
Суббота, 12 марта 2011< ^ >
maksbotan установил(а) тему: Пей тон @ Жуй картон || https://gist.github.com/289467 || Логи: http://tinyurl.com/gentoo-py-logs || "Python's a drop-in replacement for BASIC in the sense that Optimus Prime is a drop-in replacement for a truck."
Конфигурация комнаты
Участники комнаты

GMT+3
[00:09:53] krigstask вошёл(а) в комнату
[00:25:18] maksbotan вышел(а) из комнаты
[11:37:59] qnikst вошёл(а) в комнату
[11:38:52] <qnikst> krigstask: как съездил? =)
[11:39:00] <qnikst> и у меня опять сломался меркуриал
[11:39:03] <qnikst> )
[11:48:07] <krigstask> Хорошо!
[11:48:11] <krigstask> По обоим пугнктам (-%Е
[11:54:19] <qnikst> )
[12:10:32] <qnikst> а кудыездил?
[12:12:46] <krigstask> В Паанаярви, северо-запад Карелии
[12:13:00] <krigstask> Что со ртутью-то?
[12:20:25] <qnikst> да при пуше на сервер выдаёт ошибку ''
[12:20:30] <qnikst> и в лог ничо не пишет
[12:20:46] <krigstask> hg push -v ?
[12:22:03] <krigstask> --traceback можно попробовать ещё
[13:04:36] <qnikst> там URLError: <urlopen error ''>
[13:04:57] <qnikst> с hg --debug --verbose --traceback
[13:10:49] <krigstask> Значит, с установкой связи проблемы
[13:11:37] <qnikst> причём даже на локалхосте без прослойки nginx проблемы
[13:11:47] <qnikst> а если без апача, то всё круто
[13:11:53] <qnikst> т.е. hg serve
[14:12:47] <qnikst> но я вчера случайно сервер в poweroff отправил так что в пн буду мучать
[14:16:36] <krigstask> Хе-хе (-:Е
[14:17:00] <qnikst> перепутал консоль блин :/
[18:47:02] doaa вошёл(а) в комнату
[18:47:28] doaa вышел(а) из комнаты
[19:38:02] vovandekaban вошёл(а) в комнату
[19:39:01] vovandekaban вышел(а) из комнаты
[20:49:16] maksbotan вошёл(а) в комнату
[21:44:08] <maksbotan> krigstask: как ты вообще относишься к многопоточности?
[21:44:34] <krigstask> Вообще или в питоне?
[21:44:43] <maksbotan> в питоне
[21:45:57] <krigstask> Ну… Мне с ней, к счастью, толком не приходилось работать
[21:46:06] <maksbotan> хм
[21:47:39] <krigstask> Многопоточность нормально сделана в Эрланге и, возможно, в Go
[21:47:54] <maksbotan> хм
[21:48:05] <maksbotan> у меня тут просто два главных цикла выходит, как ни крути
[21:48:18] <maksbotan> один — gtk.main(), второй — мой
[21:48:30] <maksbotan> пока решил второй в поток вынести и там очередь сообщений зафигачить
[21:48:33] <maksbotan> что думаешь?
[21:51:33] <krigstask> Дерзай
[21:52:22] <maksbotan> на говнокод не похоже?
[21:52:46] <krigstask> Пока ты не напишешь — не очень
[21:53:39] <maksbotan> мдаа
[21:53:47] <maksbotan> я все боюсь что у меня овердизайн )
[21:58:33] <krigstask> Что-что?
[21:59:47] <maksbotan> дедфудовский термин
[21:59:51] <maksbotan> ну или не его, не суть
[22:00:12] <maksbotan> значит "чрезмерное проектирование, а не реальное кодописание"
[22:12:24] <maksbotan> krigstask: как там была функция для задержки?
[22:12:43] <krigstask> Умственного развития?
[22:12:56] <maksbotan> очень смешно
[22:12:59] <maksbotan> я про time.sleep
[22:13:02] <maksbotan> вспомнил сам
[22:18:49] <maksbotan> >>> threading.current_thread
<function currentThread at 0xb703e294>
[22:18:54] <maksbotan> krigstask: как вот это понимать?
[22:19:16] <krigstask> В смысле?
[22:19:41] <qnikst> в питоне есть многопоточность?
[22:20:07] <qnikst> в смысле реальная
[22:20:09] <maksbotan> krigstask: имена функция разные
[22:20:12] <maksbotan> функций*
[22:20:16] <maksbotan> qnikst: нету, конечно
[22:20:52] <qnikst> печалька
[22:21:20] <maksbotan> krigstask: оцени плиз декоратор http://paste.pocoo.org/show/352540/
[22:21:24] <qnikst> а в гтк разве нету колбеков?
[22:21:42] <maksbotan> есть
[22:22:02] <maksbotan> просто мне нужно из "вычислительного" потока вызывать "экранные" функции
[22:22:10] <qnikst> и чего?
[22:22:14] <maksbotan> этот декоратор помещает функции в очередь сообщение gtk
[22:22:24] <maksbotan> чтобы к гтк только один поток обращался
[22:22:28] qnikst чего-то не догоняет
[22:22:37] <maksbotan> в принципе этого и не надо, захотелось выпендрится
[22:23:44] qnikst сильно не догоняет
[22:24:21] <maksbotan> ну что ты не догоняешь
[22:27:23] <qnikst> зачем 2 главных цикла
[22:27:29] <qnikst> что делает 1 и что 2ой
[22:27:47] <maksbotan> да я такой вот горе-архитектор
[22:27:56] <maksbotan> первый — gtk.main() в главном потоке
[22:28:05] <maksbotan> второй — мой цикл, работающий с БД
[22:28:15] <maksbotan> условно, "вычисляющий"
[22:28:27] <maksbotan> там просто блокирующие функции
[22:28:40] <maksbotan> krigstask: кстати, ты со stackless работал?
[22:28:58] <krigstask> Не-а
[22:29:12] <qnikst> почему твой цикл не может быть callback-ом вызывающимя из главного цикла gtk?
[22:29:29] <qnikst> я вижу причины пускать тяжелые треды отдельным потоком
[22:29:41] <maksbotan> qnikst: не может
[22:29:48] <qnikst> почему?
[22:29:56] <maksbotan> хотя, гм
[22:29:56] <qnikst> что в нём такого, что не может
[22:29:59] <maksbotan> я запутался
[22:30:35] <qnikst> "думаем.. думаем.." (ц) мультфильм 1-2-3-4-5
[22:31:07] <qnikst> кстати, может ты и прав, но выбор должен быть тобой объясняем
[22:31:23] <maksbotan> цикл считывает из DB вопросы и задает их, посредством вызывания в главном потоке гтк функций
[22:31:44] <maksbotan> и блокируется, пока гтк поток не поместит в его (2-го) очередь сообщений данные о ответе
[22:31:54] <maksbotan> я удаляюсь на полчасика, обдумай это пока
[22:32:11] <krigstask> 4-:Е
[22:32:36] <qnikst> я знаю как это написать на хацкелях :/
[22:32:39] <qnikst> и go
[22:33:00] qnikst пошёл гуглить про питоновые локи
[22:37:17] <qnikst> хотя я всё хуже понимаю нафига тут вобще потоки
[22:39:29] <qnikst> создать объект работающий с db и хранящий состояние. От пользователя пришло сообщение, создаётся поток [db.action], в котором выполняется что надо, в конце жизни поток возвращает функцию в gtk, которую надо выполнить, а сам дохнет
[22:39:46] <qnikst> остаётся мелкий вопрос с concurrency )
[22:51:24] <maksbotan> в мою архитектуру не укладывается
[22:51:30] <maksbotan> к тому же я все уже придумал)
[22:54:51] <qnikst> я не понимаю почему
[22:55:06] <qnikst> у тебя db может генерировать события и изменение общего состояния?
[22:55:11] <maksbotan> я тоже не понимаю, видно такая ужасная архитектура
[22:56:09] <maksbotan> http://paste.pocoo.org/show/352560 вот текущий главный цикл, но слегка упорот
[22:56:17] <maksbotan> тьфу
[22:56:25] <maksbotan> http://paste.pocoo.org/show/352562
[22:56:45] <maksbotan> там в некотором роде граф, так что запутано
[22:58:49] <qnikst> ну... а где другой цикл главный..
[22:58:55] qnikst пока не понимает
[22:58:55] <maksbotan> gtk.main()
[22:59:12] <qnikst> аа
[22:59:28] <maksbotan> могу все сорцы показать, но вряд-ли ты захочешь копаться
[22:59:52] <qnikst> что делает ask?
[23:00:00] <qnikst> self.ui.ask
[23:00:33] qnikst меня комп в го обгрывает так что я туплю иногда
[23:01:19] <qnikst> почему-то мне кажется что он передаёт управление в главный цикл
[23:01:23] <qnikst> и ждёт ответа
[23:01:25] <maksbotan> не совсем
[23:01:26] <qnikst> оттуда
[23:01:27] <maksbotan> а, ну да
[23:01:28] <maksbotan> ждет
[23:01:29] <maksbotan> ща
[23:01:36] <qnikst> ахренеть главный цикл :)
[23:01:53] <maksbotan> git clone maksbotan.niifaq.ru/expert.git
[23:02:02] <maksbotan> cd doc && make html
[23:02:03] <qnikst> нехочу:/
[23:02:08] <maksbotan> хаха
[23:02:11] <qnikst> очень надо?
[23:02:15] <maksbotan> там доки на sphinx, все описано
[23:02:31] <maksbotan> но вообще да, он передает управление в главный цикл
[23:02:40] <maksbotan> давай я лучше завтра перепишу по-другому, а ты оценишь
[23:02:45] <qnikst> ок
[23:02:51] <maksbotan> а то спать хочется )
[23:02:56] <qnikst> окей
[23:03:06] <maksbotan> =)
[23:03:12] <maksbotan> пошел Star Trek смотреть )
[23:03:40] qnikst ждёт сегодняшнюю серию TBBT в переводе
[23:04:13] <krigstask> Сегодняшнюю?
[23:04:35] <qnikst> ну вроде как 12 числа появилась
[23:04:40] <qnikst> должна была
[23:04:54] <krigstask> ТБВ?
[23:05:01] <qnikst> да
[23:08:42] <krigstask> А я думал, оно по четвергам
[23:09:01] <qnikst> может это какой-то из переводов
[23:10:37] <krigstask> В четверг вышла серия, следующая — через три недели
[23:10:41] <qnikst> точно
[23:10:44] <qnikst> туплю
[23:10:49] <krigstask> КБ ждёшь, наверное
[23:10:58] <qnikst> это тоже
[23:10:59] <qnikst> =)
[23:11:08] <qnikst> и меня опять комп обыграл в го(
[23:11:49] <krigstask> А я сегодня посмотрел
[23:20:38] maksbotan вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!