@lssssssssssl

Почему в JS движках только один call stack?

Из-за этого, как я понимаю, JS называют однопоточным языком(Потому что стек вызовов у движков один, и он идёт по порядку). Почему не сделали 2,3,4? Чем это обосновано?

На просторе интернета я и вовсе встретил такое предложение: "В JavaScript есть только один стек вызовов, так как это однопоточный язык. "
Из которого можно сделать вывод, что количество стеков зависит от количества потоков у языка - какой-то бред, я этого не понимаю. Язык - это набор букв, какие у него могут быть потоки.

p.s. Ну и , возможно, у вас найдутся какие-то полезные материалы по этой теме(По более глубокой работе js движков), буду рад принять ваши ссылки!
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
vabka
@vabka
Токсичный шарпист
В JavaScript есть только один стек вызовов, так как это однопоточный язык.

Немного кривая формулировка конечно) Просто раньше JS был только в браузерах, и был однопоточным, тк использовался в основном для всякого интерактива - нужно было активно работать с DOM.
1. К DOM нельзя обращаться одновременно из нескольких потоков
2. Не было задач для многопоточности на фронтенде

Сейчас же для многопоточности есть Web worker, да и та же нода, например, многопоточная.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы