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

Подскажите, а когда отрабатывает garbage collector? Например, могу ли я

быть уверен, что gc не съест мой объект со слабой ссылкой на него в асинхронной функции между авэитами?

Например:

async function test() {
const o = new WeakRef({});

await something();

// Может ли вернуть undefined?
o.deref();
}

11 ответов

8 просмотров
Alexander- Автор вопроса

И вообще может это произойти между двумя строчками кода идущими рядом? // reference weakRef.deref(); // undefined weakRef.deref();

Нет, ты всё ещё не дожидаешься коннекта.

Alhimik [frozen]
Нет, ты всё ещё не дожидаешься коннекта.

а как тогда ? создать async функции и в ней спомощю await подключиться к базе ?

Alexander- Автор вопроса

Например при реализации identity map, который не будет заружать память

Alexander
И вообще может это произойти между двумя строчками...

То что нода однопоточная, поэтому, думаю не сможет удалить ссылку при выполнении кода подряд. Только на следующем тике. Но во время await получается что сможет удалить.

Alexander
Например при реализации identity map, который не б...

можно изучить исходники https://www.npmjs.com/package/weak-identity-map

Ну да. Ну можешь в колбэке сервер стартовать, но это не удобно.

вот, убрал then и catch! топерь то норм ?

Влад
вот, убрал then и catch! топерь то норм ?

Листен всё же лучше выполнять после навешивания роутов. Покажи что у тебя после 37-ой строки.

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

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

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
кто шарит: mattermost отслеживает что ты на пк запускаешь?
Valentin
13
Помогите, пожалуйста, делаю программу для для подсчёта корней квадратного уравнения, знаю, что есть куча недочётов, недоработок, но основная проблема в том, что почему-то при ...
NYC
13
#include <stdio.h> int main(void) { int n; scanf("%d", &n); int digits1[n] = {0}; int digits2[n] = {0}; я не могу таким образом заранее массив нулями заполнить?
Linus
12
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
я про форму записи. смысл указывать что 8 байтный регистр 8 байт?
Aiwan \ (•◡•) / _bot
10
Вроде бы вопрос уже заезжанный, но тем не менее У меня есть функция menu() которая выводит набор возможных действий, а затем спрашивает у пользователя что он хотел бы сделать....
David Golovatin
5
Карта сайта