Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.01.2012, 00:58
Новичок на форуме
Отправить личное сообщение для lorents Посмотреть профиль Найти все сообщения от lorents
 
Регистрация: 22.01.2012
Сообщений: 7

Параллельный запуск функций
Добрый вечер!
Допустим у меня есть функция (обрабатывает изображение) и у меня есть 5 изображений (назовем их image1, image2, ..., image5).

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

Допустим запустили последовательно обработку image1 и image2 (они обрабатываются за разное время), и как только одно из изображений заканчивает обработку, мы запускаем image3, и т.д. И так пока мы не обработаем все изображения.

Подскажите, как можно все это реализовать?
Ответить с цитированием
  #2 (permalink)  
Старый 22.01.2012, 01:11
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,521

Javascript однопоточный язык.
Вы можете имитировать многопоточность используя setTimeout( func , 1 )
Но всё равно все действия будут выполняться по очереди, пока одно не закончено второе не начнтся.
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 22.01.2012, 01:13
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

что значит "запустили на обработку". это что, отсылка серверу, или обработка в canvas?

в любом случае, параллелизма можно достичь только с помощью webWorkers.
Ответить с цитированием
  #4 (permalink)  
Старый 22.01.2012, 11:28
Новичок на форуме
Отправить личное сообщение для lorents Посмотреть профиль Найти все сообщения от lorents
 
Регистрация: 22.01.2012
Сообщений: 7

melky
"запустили на обработку" - у меня есть программа, работает через командную строку, суть ее в том, что запускаем программу с изображением.

не подскажите, через webWorkers можно запускать отдельно скрипт на windows?
Ответить с цитированием
  #5 (permalink)  
Старый 22.01.2012, 11:39
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

да, можно. это единственная на данный момент возможность реализации многопоточности в JS
Ответить с цитированием
  #6 (permalink)  
Старый 22.01.2012, 12:12
Новичок на форуме
Отправить личное сообщение для lorents Посмотреть профиль Найти все сообщения от lorents
 
Регистрация: 22.01.2012
Сообщений: 7

у меня еcть проект Image Catalyst, хочу его перевести на javascript

Вы не могли посмотреть и сказать, можно ли организовать все это средствами javascript?

а через что можно запустить скрипт под windows, если можно отдельно от браузера? Смотрел на движок V8, нет его компилированной версии?

Последний раз редактировалось lorents, 22.01.2012 в 12:25.
Ответить с цитированием
  #7 (permalink)  
Старый 22.01.2012, 12:40
Аватар для Magneto
Люмус, Емаксос Developer!
Отправить личное сообщение для Magneto Посмотреть профиль Найти все сообщения от Magneto
 
Регистрация: 06.05.2010
Сообщений: 677

Node.js
Ответить с цитированием
  #8 (permalink)  
Старый 22.01.2012, 14:15
Новичок на форуме
Отправить личное сообщение для lorents Посмотреть профиль Найти все сообщения от lorents
 
Регистрация: 22.01.2012
Сообщений: 7

на счет Node.js, хотел узнать:
1. может ли работать с многоядерными процессорами
2. и что там на счет утечки памяти? проект может работать сутками.

можно пример работы с webWorkers?
Есть папка с изображениями PNG, как можно сделать в два потока обработку изображений. Обработка происходить с помощью приложения truepng с параметрами -zc9 -zm1-9 -zs0-3 -fe -a1 -force "изображение PNG". truepng и папка находится в одной папке со скриптом.

Последний раз редактировалось lorents, 22.01.2012 в 14:19.
Ответить с цитированием
  #9 (permalink)  
Старый 25.01.2012, 09:56
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от lorents
1. может ли работать с многоядерными процессорами
Если несколько процессов запустить.

Сообщение от lorents
2. и что там на счет утечки памяти? проект может работать сутками.
Может. Нет никаких утечек.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск функций друг за другом frolvict jQuery 7 09.08.2011 21:50
Чем можно организовать запуск скрипта атом. по времени. I5Rek Серверные языки и технологии 2 01.05.2011 23:00
Запуск функций во фреймах Kyy Общие вопросы Javascript 1 16.11.2010 17:40
Несколько функций на одно событие. abstract Events/DOM/Window 13 26.10.2010 10:46
Как получить список пользовательских функций объекта window? Маэстро Events/DOM/Window 13 03.07.2010 13:20