Паралельное программироввание в JavaScript
Не знаю как в этой вашей java'е, но в винде в общем поток не может прерываться. В COM, например, эта функция была бы вызвана либо в параллельном потоке, либо доставлена через очередь сообщений в зависимости от модели многопоточности.
Чтобы не "вклинивалась" callback-функция можно использовать обычные примитивы синхронизации (в данном случае критическую секцию или еще что).
Чтобы не "вклинивалась" callback-функция можно использовать обычные примитивы синхронизации (в данном случае критическую секцию или еще что).
Javascript однопоточный.
callback-функция не может никуда вклинится. Она начнёт выполнятся когда интерпретатор освободится.
callback-функция не может никуда вклинится. Она начнёт выполнятся когда интерпретатор освободится.
Javascript однопоточный.Все понятно, спасибо за ответ.
callback-функция не может никуда вклинится. Она начнёт выполнятся когда интерпретатор освободится.
Не знаю как в этой вашей java'е, но в винде в общем поток не может прерываться. В COM, например, эта функция была бы вызвана либо в параллельном потоке, либо доставлена через очередь сообщений в зависимости от модели многопоточности.В Java все точно так же, мы про JavaScript говорим, там даже поток нельзя создать.
а это в стандарте написано или реализовывают так?
Стандарт не нашёл, но все известные мне браузерные реализации запускают JS в отдном потоке для каждой страницы.
И даже хром?
Даже есть внутри он и умеет запускать несколько потоков, ведёт он себя точно так же, как и остальные браузеры.
Javascript однопоточный.ну и что? Я просто написал, что в винде в принципе поток не может прерываться. Привел пример. Вы все такие злые =)
гг, а как же worker'ы в альфе фаерфокса?
Ну да, еще есть WorkerPool в Google Gears.
А еще flash-ки каждая в своем треде, насколько я помню.
боюсь что атомарности достичь нельзя, т.к. нет языковых конструкций / системных вызовов для этого 0_о
народ в интернете тоже толком ничего не знает ...
http://listentorick.blogspot.com/2008/03/threading-and-javas...
http://my2iu.blogspot.com/2006/10/javascript-is-multi-thread...
http://odetocode.com/Blogs/scott/archive/2007/01/08/9734.asp...
народ в интернете тоже толком ничего не знает ...
http://listentorick.blogspot.com/2008/03/threading-and-javas...
http://my2iu.blogspot.com/2006/10/javascript-is-multi-thread...
http://odetocode.com/Blogs/scott/archive/2007/01/08/9734.asp...
Можно сделать многопоточный javascript, если планирование потоков возложить на программиста. В GWT, с которым я сейчас работаю, есть специальная либа для длинных вычислений, чтобы у пользователя не создавалось впечатление, что браузер повис. Она основана на том, что поток обрывает вычисления и ставит таймер на их возобновление. Интерпретатор освобождается и может реагировать на события UI.
Оставить комментарий
Gaishnik
Я делаю асинхронный запрос к серверу и указываю callback функцию. Эта функция выполняется в параллельном потоке или в том же самом? Если верен вариант 1, то как синхронизировать потоки? А если верен вариант 2, то как сделать, чтобы несколько операторов выполнялись атомарно и между ними не вклинилась callback функция?