Показать сообщение отдельно
  #3 (permalink)  
Старый 25.04.2011, 23:18
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

monolithed, Workers очень специфичная вещь, передавая объект с набором функций, воркер не видит их. Он их видит, как пустые объекты.
Сообщение от monolithed
лучше код (каркас) приведите того что вам нужно в итоге....
Тут собсно всё просто:

main.js:
var obj = {f: function(){return 'ok';}}
var worker = new Worker('worker.js');
worker.postMessage(obj);

worker.onmessage = function(e){
  console.log(e.data);
};


worker.js:
onmessage = function(e){
  postMessage(e.data.f()); //TypeError: object is not a function
}

Нужно каким-то образом заставить видеть воркер функции, которые я передаю. Нашел костыль, который запускаем в воркере:
importScripts('BigInt.js'); //подобие include
Так можно импортировать библиотеку, но вот как можно импортировать функцию или набор функций или функции, которые были созданы в главном потоке без создания еще одного файла — хз.
Ответить с цитированием