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

Сообщение Re[33]: Для тех, кто смеется над JavaScript от 29.06.2020 12:13

Изменено 29.06.2020 12:17 Pauel

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

I>>Ты хочешь получить гонки на одной задаче? Гонки это когда много задач Или много под-задач.

S> Был вопрос про однопоточность. По сути подразумевалось про однозадачность для данного объекта.

Ты путаешь однопоточность и однозадачность.

S>>>Если задачи выполняются через await никакому другому эта задача не уйдет!

S>Если ты запустил несколько задач без await, то это уже многозадачность!

Капитан, я про это и пишу!

S> Это не сахар, а конечный автомат. Внутри стоит yield.


Стоит или не стоит, это прячется компилятором. Один из вариантов это трансляция в промисы, второй вариант — нативный await, еще вариант — yield, еще вариант — конечный вариант, самый упоротый из всех.
И, о ужас, еще вариант — обычные колбеки.

Функционально все это сводится к колбекам. Никаких преимуществ сверх этого нет и не будет.

S> А при чем тут мьютекс? Ты же сам пишешь " Авайт всего лишь связывает последовательность", то есть части awaite выполняются последовательно.


А потому, что я изначально пишу про многозадачность, а именно — асинхронный однопоточный код.

S>О каких нескольких цепочках идет речь? Вторую цепочку ты можешь запустить без awaite. Тогда и синхронному коду придет кирдык!


Я именно про это и пишу.

S>Возьми мой код с await и посмотри. Если там будет разнобой значит дерьмо ваша JS.


Ты похоже влез и начал не читая махать шашкой.

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


И про это я тоже пишу.

S>Но речь то идет про однозадачность. Будь она синхронная или асинхронная.




S>Все твои примеры из многозадачности от которой не спасает и синхронный код.


Бинго! С этого все и начиналось. Только надо было читать внимательно.
Re[33]: Для тех, кто смеется над JavaScript
Здравствуйте, Serginio1, Вы писали:

I>>Ты хочешь получить гонки на одной задаче? Гонки это когда много задач Или много под-задач.

S> Был вопрос про однопоточность. По сути подразумевалось про однозадачность для данного объекта.

Ты путаешь однопоточность и однозадачность.

S>>>Если задачи выполняются через await никакому другому эта задача не уйдет!

S>Если ты запустил несколько задач без await, то это уже многозадачность!

Капитан, я про это и пишу!

S> Это не сахар, а конечный автомат. Внутри стоит yield.


Стоит или не стоит, это прячется компилятором. Один из вариантов это трансляция в промисы, второй вариант — нативный await, еще вариант — yield, еще вариант — конечный вариант, самый упоротый из всех.
И, о ужас, еще вариант — обычные колбеки.

Функционально все это сводится к колбекам. Никаких преимуществ сверх этого нет и не будет.

S> А при чем тут мьютекс? Ты же сам пишешь " Авайт всего лишь связывает последовательность", то есть части awaite выполняются последовательно.


А потому, что я изначально пишу про многозадачность, а именно — асинхронный однопоточный код.

S>О каких нескольких цепочках идет речь? Вторую цепочку ты можешь запустить без awaite. Тогда и синхронному коду придет кирдык!


Я именно про это и пишу.

S>Возьми мой код с await и посмотри. Если там будет разнобой значит дерьмо ваша JS.


Ты похоже влез и начал не читая махать шашкой.

Читай себя

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


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

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


И про это я тоже пишу. Все мои примерно про многозадачность в жээсе и про необходимость синхронизации.

S>Но речь то идет про однозадачность. Будь она синхронная или асинхронная.




S>Все твои примеры из многозадачности от которой не спасает и синхронный код.


Бинго! С этого все и начиналось. Только надо было читать внимательно.