@@ -87,6 +87,9 @@ class Manager extends Base {
8787 data : {
8888 fileName : devMode ? 'Data.mjs' : 'dataworker.js'
8989 } ,
90+ task : {
91+ fileName : devMode ? 'Task.mjs' : 'taskworker.js'
92+ } ,
9093 vdom : {
9194 fileName : devMode ? 'VDom.mjs' : 'vdomworker.js'
9295 }
@@ -124,7 +127,7 @@ class Manager extends Base {
124127 'message:readDom' : { fn : DomAccess . onReadDom , scope : DomAccess } ,
125128 'message:registerRemote' : { fn : me . onRegisterRemote , scope : me } ,
126129 'message:workerConstructed' : { fn : me . onWorkerConstructed , scope : me }
127- } ) ;
130+ } )
128131 }
129132
130133 /**
@@ -135,9 +138,10 @@ class Manager extends Base {
135138 Object . keys ( this . workers ) . forEach ( name => {
136139 if ( ! (
137140 name === 'canvas' && ! NeoConfig . useCanvasWorker ||
141+ name === 'task' && ! NeoConfig . useTaskWorker ||
138142 name === 'vdom' && ! NeoConfig . useVdomWorker
139143 ) ) {
140- this . sendMessage ( name , msg ) ;
144+ this . sendMessage ( name , msg )
141145 }
142146 } ) ;
143147 }
@@ -163,7 +167,7 @@ class Manager extends Base {
163167
164168 me . activeWorkers ++ ;
165169
166- return worker ;
170+ return worker
167171 }
168172
169173 /**
@@ -193,17 +197,18 @@ class Manager extends Base {
193197
194198 for ( [ key , value ] of Object . entries ( me . workers ) ) {
195199 if ( key === 'canvas' && ! config . useCanvasWorker ||
200+ key === 'task' && ! config . useTaskWorker ||
196201 key === 'vdom' && ! config . useVdomWorker
197202 ) {
198- continue ;
203+ continue
199204 }
200205
201206 try {
202- value . worker = me . createWorker ( value ) ;
207+ value . worker = me . createWorker ( value )
203208 } catch ( e ) {
204209 document . body . innerHTML = e ;
205210 me . stopCommunication = true ;
206- break ;
211+ break
207212 }
208213
209214 me . sendMessage ( key , {
@@ -223,13 +228,13 @@ class Manager extends Base {
223228 NeoConfig . hasTouchEvents = ( 'ontouchstart' in window ) || ( navigator . maxTouchPoints > 0 ) ;
224229
225230 if ( window . Worker ) {
226- me . webWorkersEnabled = true ;
231+ me . webWorkersEnabled = true
227232 } else {
228- throw new Error ( 'Your browser does not support Web Workers' ) ;
233+ throw new Error ( 'Your browser does not support Web Workers' )
229234 }
230235
231236 if ( window . SharedWorker ) {
232- me . sharedWorkersEnabled = true ;
237+ me . sharedWorkersEnabled = true
233238 }
234239 }
235240
@@ -239,10 +244,10 @@ class Manager extends Base {
239244 */
240245 getWorker ( name ) {
241246 if ( name === 'service' ) {
242- return navigator . serviceWorker ?. controller || this . serviceWorker ;
247+ return navigator . serviceWorker ?. controller || this . serviceWorker
243248 }
244249
245- return name instanceof Worker ? name : this . workers [ name ] . worker ;
250+ return name instanceof Worker ? name : this . workers [ name ] . worker
246251 }
247252
248253 /**
@@ -253,7 +258,7 @@ class Manager extends Base {
253258 action : 'loadApplication' ,
254259 path,
255260 resourcesPath : NeoConfig . resourcesPath
256- } ) ;
261+ } )
257262 }
258263
259264 /**
@@ -265,9 +270,9 @@ class Manager extends Base {
265270 me . constructedThreads ++ ;
266271
267272 if ( me . constructedThreads === me . activeWorkers ) {
268- NeoConfig . appPath && setTimeout ( ( ) => { // better save than sorry => all remotes need to be registered
273+ NeoConfig . appPath && setTimeout ( ( ) => { // better safe than sorry => all remotes need to be registered
269274 me . loadApplication ( NeoConfig . appPath ) ;
270- } , NeoConfig . loadApplicationDelay ) ;
275+ } , NeoConfig . loadApplicationDelay )
271276 }
272277 }
273278
@@ -277,7 +282,7 @@ class Manager extends Base {
277282 */
278283 onWorkerError ( e ) {
279284 // starting a worker from a JS module will show JS errors in a correct way
280- ! devMode && console . log ( 'Worker Error:' , e ) ;
285+ ! devMode && console . log ( 'Worker Error:' , e )
281286 }
282287
283288 /**
@@ -307,12 +312,12 @@ class Manager extends Base {
307312 // we want to delay the message until the rendering queue has processed it
308313 // see: https://github.com/neomjs/neo/issues/2864
309314 me . promiseForwardMessage ( data ) . then ( msgData => {
310- me . sendMessage ( msgData . destination , msgData ) ;
311- } ) ;
315+ me . sendMessage ( msgData . destination , msgData )
316+ } )
312317 }
313318 } else {
314319 if ( data . destination === 'main' ) {
315- data = data . data ;
320+ data = data . data
316321 }
317322
318323 promise [ data . reject ? 'reject' : 'resolve' ] ( data ) ;
@@ -322,7 +327,7 @@ class Manager extends Base {
322327
323328 if ( dest !== 'main' && action !== 'reply' ) {
324329 if ( data . transfer ) {
325- transfer = [ data . transfer ] ;
330+ transfer = [ data . transfer ]
326331 }
327332
328333 me . promiseMessage ( dest , data , transfer ) . then ( response => {
@@ -333,8 +338,8 @@ class Manager extends Base {
333338 reject : true ,
334339 replyId : data . id ,
335340 error : err . message
336- } ) ;
337- } ) ;
341+ } )
342+ } )
338343 }
339344
340345 // only needed for SharedWorkers
@@ -344,11 +349,11 @@ class Manager extends Base {
344349 me . broadcast ( {
345350 action : 'registerApp' ,
346351 appName : data . appName
347- } ) ;
352+ } )
348353 }
349354
350355 else if ( dest === 'main' && action === 'remoteMethod' ) {
351- me . onRemoteMethod ( data ) ;
356+ me . onRemoteMethod ( data )
352357 }
353358 }
354359
@@ -359,8 +364,8 @@ class Manager extends Base {
359364 */
360365 promiseForwardMessage ( data ) {
361366 return new Promise ( ( resolve , reject ) => {
362- this . promises [ data . replyId ] = { data, reject, resolve } ;
363- } ) ;
367+ this . promises [ data . replyId ] = { data, reject, resolve }
368+ } )
364369 }
365370
366371 /**
@@ -378,8 +383,8 @@ class Manager extends Base {
378383 let message = me . sendMessage ( dest , opts , transfer ) ,
379384 msgId = message . id ;
380385
381- me . promises [ msgId ] = { reject, resolve } ;
382- } ) ;
386+ me . promises [ msgId ] = { reject, resolve }
387+ } )
383388 }
384389
385390 /**
@@ -391,7 +396,7 @@ class Manager extends Base {
391396
392397 if ( promise ) {
393398 promise . resolve ( promise . data ) ;
394- delete this . promises [ replyId ] ;
399+ delete this . promises [ replyId ]
395400 }
396401 }
397402 }
@@ -412,21 +417,21 @@ class Manager extends Base {
412417 if ( ! me . stopCommunication ) {
413418 if ( opts . channelPort ) {
414419 worker = opts . channelPort ;
415- delete opts . channelPort ;
420+ delete opts . channelPort
416421 } else {
417- worker = me . getWorker ( dest ) ;
422+ worker = me . getWorker ( dest )
418423 }
419424
420425 if ( ! worker ) {
421- throw new Error ( 'Called sendMessage for a worker that does not exist: ' + dest ) ;
426+ throw new Error ( 'Called sendMessage for a worker that does not exist: ' + dest )
422427 }
423428
424429 opts . destination = dest ;
425430
426431 message = new Message ( opts ) ;
427432
428433 ( worker . port ? worker . port : worker ) . postMessage ( message , transfer ) ;
429- return message ;
434+ return message
430435 }
431436 }
432437}
0 commit comments