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

Привет! А кто как защищает свои асинхронные методы от повторного

вхождения (reentrance) ? Поясню - есть например async функция которая внутри скажем читаемт много данных по сети или indexDb, и пока она ждет своего await ее могут вызвать повторно, но например с другими аргументами. И два таких “параллельных” запуска могут испортить общий стейт с которым они работают (стейт не в плане vuex, а вообще какие-то данные).

6 ответов

33 просмотра

Cancel tokens

Как чтение данных может испортить общий стейт?

чтение асинхронное, а запись синхронная, можно с блокировкой

Anton Permyakov
Как чтение данных может испортить общий стейт?

Стейт они вряд ли испортят, но нагрузку на бэк точно повысят

Ashish Cancelado
Стейт они вряд ли испортят, но нагрузку на бэк точ...

На первый запрос не факт что прийдет первым ответ... Вот и сломались

Evgeniy Vanzhula
На первый запрос не факт что прийдет первым ответ....

Это пример неправильного использования стейта)

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

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

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
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
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта