Editado para hacer la pregunta más clara.Dart Isolates As Workers
Estoy tratando de trabajar con aislamientos (o Web Workers) en Dart. Las únicas formas en que puedo encontrar para comunicarme entre los hilos principal y aislado son enviar y llamar y luego desde el hilo principal. Pero esa es una buena forma para que el hilo principal pase algunos datos al aislado.
¿Qué pasa si quiero que el aislado sea el que genera la información? ¿Como un motor de juego que hace toda la física en un trabajador y luego envía una información mundial actualizada al hilo principal? En JavaScript puede enviar datos en cualquier momento. ¿Hay una manera eficiente en Dart? ¿O todavía tengo que esperar que el hilo principal me llame y luego se lo pase?
P.S. Me pregunto, ¿llama al & y luego bloquea el hilo hasta que la respuesta finalice o no?
pero lo que es si quiero que mi aislamiento para generar/actualizar? Como un motor de juego. Se supone que ejecuta todos los cálculos y luego pasa los estados actualizados del objeto en el juego. ¿Existe un mecanismo eficiente para eso o tengo que construirlo sobre aislamientos? – Pijusn
@Pius no puede enviar referencias a un aislante, todos los datos trabajados se copian como se describe aquí http://api.dartlang.org/dart_isolate/SendPort.html#send –
No estoy hablando de referencias en absoluto. Estoy hablando de datos. ¿Alguna vez trabajó con Web Workers en JavaScript? Puede enviar datos del trabajador en cualquier momento. Y tanto, como quieras. El trabajador podría trabajar y enviar datos sin siquiera escuchar el hilo principal, mientras que el hilo principal podría simplemente recibir datos utilizando una función de devolución de llamada. Estoy hablando de self.postMessage función equivalente en aislar. – Pijusn