169 похожих чатов

И почему он должен забиваться, если там синхронно?

23 ответов

14 просмотров

не так. там отрабатывает "цикл" по юзерам и для каждого юзера еще и 100 сообщений отсылается. если 10 юзеров по 100 - это уже 1000 сообщений. потом когда стек вызовов пустеет коллбеки от этих сообщений обрабатываются по порядку (а в нашем случае их 1000). естественно код не реагирует - он обрабатывает сотни а может и тысячи коллбеков по порядку

Denys Mikhalenko
call stack - это несколько другое

вполне корректно говорить колл стек

N0rda_a Миролюбов
не так. там отрабатывает "цикл" по юзерам и для ка...

Выглядит будто по сообщению для юзера и ещё 100 сообщений непонятно куда.

N0rda_a Миролюбов
screenshot вполне корректно говорить колл стек

Так в случае с асинхронным кодом стек вызовов практически пустой, разве что обёртка send криво написана.

Alexey Pupkin
Так в случае с асинхронным кодом стек вызовов прак...

у него все синхронно в том то и дело. он быстренько сбегал в 10 банков и по 100 паспортам в каждом банке взял по кредиту.,а потом когда он закончил все банки оббегать они ему предьявили платеж по всем кредитам

jk
Ты уверен что там цикл в цикле?

да. users.map - условно один цикл, и для каждого юзера еще внутри while - другой цикл

N0rda_a Миролюбов
да. users.map - условно один цикл, и для каждого ю...

Странно, в упор не вижу. Вижу два не связанных друг с другом цикла без вложенности. Что то со мной не так сегодня.

N0rda_a Миролюбов
у него все синхронно в том то и дело. он быстреньк...

в случае с синхронным кодом стек тоже не "забьется" и не переполнится (разве что send этого не делает, что вряд ли)

Alexey Pupkin
в случае с синхронным кодом стек тоже не "забьется...

но все равно когда стек опустеет все колбеки от send выполняются же по-порядку. я правильно понял?

N0rda_a Миролюбов
но все равно когда стек опустеет все колбеки от se...

в том примере только колбеки для обработки ошибок. Если говорить о них, то выполнятся они не по порядку конечно же.

Alexey Pupkin
в том примере только колбеки для обработки ошибок....

разве это не тоже самое что и в этом фрагменте из видео? https://youtu.be/bUx8wk4LdoY?t=1848

Alexey Pupkin
что "то же самое"? рекурсивный вызов?

нет. то что выполняются все микротаски которые есть в очереди до конца

N0rda_a Миролюбов
нет. то что выполняются все микротаски которые ест...

если честно, то я плохо разбираюсь в том, что под капотом, но при вызове асинхронных функций в цикле не гарантируется, что колбеки будут вызваны в том же порядке. Иначе зачем тогда придумали await внутри for?

Alexey Pupkin
если честно, то я плохо разбираюсь в том, что под ...

правильно. только await внутри for не то чтобы придумали. просто так как for работает по итерационному протоколу, то в теле цикла можно ждать исполнения промиса.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта