Информация об изменениях

Сообщение Re[26]: Для тех, кто смеется над JavaScript от 28.06.2020 18:36

Изменено 28.06.2020 18:40 Serginio1

Re[26]: Для тех, кто смеется над JavaScript
Здравствуйте, Ikemefula, Вы писали:

I>Здравствуйте, Serginio1, Вы писали:


I>>>Ты можешь заменить операции с файлом, скажем на такие


I>>>
I>>>async read(): number { return i }

I>>>async write(value: number) { i = value }
I>>>


S>>Это уже не "однопоточном исполнителе"


I>

I>Это обычный джаваскрипт, его исполнение однопоточно. Но это асинхронный код, хотя здесь и нет никакого IO. Соответственно, гонки — в полный рост и именно там, откуда и стоит ждать.

Откуда гонки?
 var i=await  read();
 await write(++i);


будут вызываться только в одном методе (await гарантирует последовательность вызовов из разных потоков)
Читай и записывай хоть откуда. Тоже, что и при синхронном.
Re[26]: Для тех, кто смеется над JavaScript
Здравствуйте, Ikemefula, Вы писали:

I>Здравствуйте, Serginio1, Вы писали:


I>>>Ты можешь заменить операции с файлом, скажем на такие


I>>>
I>>>async read(): number { return i }

I>>>async write(value: number) { i = value }
I>>>


S>>Это уже не "однопоточном исполнителе"


I>

I>Это обычный джаваскрипт, его исполнение однопоточно. Но это асинхронный код, хотя здесь и нет никакого IO. Соответственно, гонки — в полный рост и именно там, откуда и стоит ждать.


Откуда гонки?
 var i=await  read();
 await write(++i);


будут вызываться только в одном методе (await гарантирует последовательность вызовов из разных потоков)
Читай и записывай хоть откуда. Тоже, что и при синхронном.

Покажи гонки если вызывается только один метод, по аналогии с однопоточным?