Size: a a a

2020 April 10

VG

Vadim Goncharov in Modern::Perl
Anton Petrusevich
в общем, мои соболезнования твоей проблеме.
так всегда бывает, когда облако на php ;)
источник

VG

Vadim Goncharov in Modern::Perl
JSON API вконтача тоже говноватый
источник

a

allter in Modern::Perl
Vadim Goncharov
в нормальных лупах, например tcl/tk, просто есть флаг в вызове, рекурсию или нет - никто не запрещал Леману сделать так же
Ты учти, что это ANY event, т.е. причёсывание всех лупов под одну гребёнку.
К примеру, в EV (кажется) есть возможность запустить однократную обработку накопившихся событий, а в других нет.

Ну и никто, вроде, не запрещает несколько condvar в одной программе, главное что бы рекурсивно они не вызывались одна из другой. Но вообще, больше одного condvar в проге, на мой взгляд, это признак ошибки. По сути, они нужны только для того, что бы сигнализировать об условии выхода.
источник

AP

Anton Petrusevich in Modern::Perl
allter
Ты учти, что это ANY event, т.е. причёсывание всех лупов под одну гребёнку.
К примеру, в EV (кажется) есть возможность запустить однократную обработку накопившихся событий, а в других нет.

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

VG

Vadim Goncharov in Modern::Perl
allter
Ты учти, что это ANY event, т.е. причёсывание всех лупов под одну гребёнку.
К примеру, в EV (кажется) есть возможность запустить однократную обработку накопившихся событий, а в других нет.

Ну и никто, вроде, не запрещает несколько condvar в одной программе, главное что бы рекурсивно они не вызывались одна из другой. Но вообще, больше одного condvar в проге, на мой взгляд, это признак ошибки. По сути, они нужны только для того, что бы сигнализировать об условии выхода.
ну почему же, у меня вот натурально ситуация вышла почти как в примере его туториала по кондварам с пингом набора хостов - один барьер, потом другой барьер

И если разные лупы, то как раз логично было бы дать флаги/подстройки под особенности тех или иных, по-меому
источник

VG

Vadim Goncharov in Modern::Perl
Anton Petrusevich
про кондвары я не согласен. они нормальное средство коммуникации между тредами, просто для этого нужны треды (коро)
звучит как костыль
источник

VG

Vadim Goncharov in Modern::Perl
нигде в самом AnyEvent не сказано, что он должен использоваться вместе с Coro, всё это сделано типа независимо же
источник

AP

Anton Petrusevich in Modern::Perl
ну, не сказано, да. поскольку можно и без.
источник

VG

Vadim Goncharov in Modern::Perl
я и сделал без :)
источник

a

allter in Modern::Perl
Anton Petrusevich
про кондвары я не согласен. они нормальное средство коммуникации между тредами, просто для этого нужны треды (коро)
Кстати, в Coro, всё-таки, есть поддержка тредов операционной системы? Когда-то изучал, но забыл. Это сильное утверждение в начале перлдока по Coro ("the only real threads in perl") очень сильно сбивает.
источник

VG

Vadim Goncharov in Modern::Perl
allter
Кстати, в Coro, всё-таки, есть поддержка тредов операционной системы? Когда-то изучал, но забыл. Это сильное утверждение в начале перлдока по Coro ("the only real threads in perl") очень сильно сбивает.
а думаешь просто так "Леман пидор" ? это один из фактов в копилку - пиздит он про треды
источник

a

allter in Modern::Perl
Vadim Goncharov
а думаешь просто так "Леман пидор" ? это один из фактов в копилку - пиздит он про треды
Ну, если бы он добавил "green", то это не было бы так фрустрирующе...
Просто тот же подход Coro здравый (например, если бы сделали поддержку синтаксиса для async/await в ванильном Perl на основе них, я был бы рад), но если бы вещи назывались своими именами, было бы проще...
источник

VG

Vadim Goncharov in Modern::Perl
ну, там от правильных имен только 4 буквы в самом названии - корутины
источник

VG

Vadim Goncharov in Modern::Perl
а так он с какого-то хера не любит use threads настолько, что аж переименовал всё
источник

VG

Vadim Goncharov in Modern::Perl
хотя ведь, несмотря на их недостатки, можно и с другого ракурса посмотреть - они правда независимые, а не как GIL в питоне 8)
источник

a

allter in Modern::Perl
Vadim Goncharov
хотя ведь, несмотря на их недостатки, можно и с другого ракурса посмотреть - они правда независимые, а не как GIL в питоне 8)
Только такая независимость убивает основное преимущество тредов перед процессами - экономию памяти. :( Нет, такие "треды" нам не нужны...
источник

VG

Vadim Goncharov in Modern::Perl
почему, можно же помечать как shared
источник

VG

Vadim Goncharov in Modern::Perl
есть случаи, когда они вполне могут быть в тему, в общем
источник

a

allter in Modern::Perl
Vadim Goncharov
почему, можно же помечать как shared
Фактически, это для того, что бы передавать инфу из одного треда в другой. Но развесистую структуру скаляров так не расшаришь. А для простых данных и с процессами такое делается - через shared memory и другие инструменты IPC.
В общем, единственный случай - Windows. Но сейчас там уже есть WSL`и с форками...
источник

VG

Vadim Goncharov in Modern::Perl
стабильность и полнота фич WSL под сомнением...
источник