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

Async () => { let data = fs.readFileSync(...);

// ...
}

это и правда приложение блочит полностью?

15 ответов

6 просмотров

Конечно

async в начале функции ничего не меняет, он не уносит выполнение в отдельный поток

Sync это ОЧЕНЬ плохая идея. Всегда нужно использовать асинхронные методы, тем более сейчас даже await глобальный есть

Agent-G- Автор вопроса
Тупая Инфузория
слева блять

человек выше говорил что в случае fs.read не блочится какой бы большой файл не был

Agent-G- Автор вопроса
Sergey
Sync это ОЧЕНЬ плохая идея. Всегда нужно использов...

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

Agent-G
человек выше говорил что в случае fs.read не блочи...

Да, попробуй сам, если не веришь. Сделай один пусть с асинком второй с синком. М проверь, когда будет первый разброс обрабатываться сделать второй

Agent-G
дело получается в самом авайте? если метод без ава...

Дело в Sync!!!! Я не понятное что-то говорю?

Sergey
Sync это ОЧЕНЬ плохая идея. Всегда нужно использов...

Не всегда. Если тебе нужно поменять очень редко что-то важное в приложении, например сертификаты в SSL соединении, глобальная блокировка на время чтения это уже не баг, а фича.

Agent-G- Автор вопроса
Sergey
Дело в Sync!!!! Я не понятное что-то говорю?

сунк распространяется на весь eventloop получается блочит все приложение?

Agent-G
сунк распространяется на весь eventloop получается...

Yes. У тебя ничего не будет работать вообще во всей программе, пока этот синк не выполнится. А если юзаешь асинк, то будет норм, и пока он читает файл, другие запросы обрабатываются а не висят

Agent-G- Автор вопроса
Sergey
Yes. У тебя ничего не будет работать вообще во все...

и много таких библиотечных стопкранов в ноде?

Sergey
Sync это ОЧЕНЬ плохая идея. Всегда нужно использов...

Чуть-чуть поправлю: синхронные методы допустимы, и часто именно нужны, на этапе инициализации (старта) приложения

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

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

Сообщение* в закодированном виде. То есть, просто сделать sendMessage?text=Привет бла-бла! не получится, надо в HEX переводить, и добавлять процент, типа такого: sendMessage?t...
КТ315
21
А случайно нет ли в паскале штатной возможности передать указатель и количество туда где array of в качестве аргумента?
zamtmn
25
Всем привет. Испытываю проблемы в работе БД, а именно огромного роста логов, такого характера: 024-05-16 18:39:07 +05 sentry sentry [unknown] 1050169 7-1 app-sentry01.corp.ru>...
Alexey
2
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
58
Хм. А телеграм апи работают через HTTP?
The Bird of Hermes
14
Почему Telegram пишет, что объект media не найден, хотя на самом деле я его передаю? Делаю на urllib, без зависимостей, так надо. Вызываю метод sendMediaGroup с таким JSON: ...
Alexey S
1
Ну раз я пока тут, задам пару глупых вопросов. Зачем писать на ассемблере если компилятор довольно умный, а ассемблер много времени занимает? В каких прикладных задачах сейчас...
Максим Рябцев
20
В дельфе нет никакого коробочного (без установки третьих либ) способа получить CallStack с расшифровкой отладочных символов?
notme
7
Я тут за тем, чтобы задать вопрос, так как не знаю ассемблер, учу с/с++. Короче, насколько дорога операция перехода в функцию при ее вызове? Дело в том, что в с++ есть макросы...
Максим Рябцев
12
Привет, нужен совет старших товарищей. Есть глобальная переменная var DefaultDataFolder:string; инициализируем DefaultDataFolder:='a:\_OUT\'; есть примитивная процедур...
Max Otto
14
Карта сайта