Nell script #41 abbiamo introdotto i web worker mostrando come questi permettano di eseguire codice in un thread che non è quello principale. Nello script abbiamo visto che il file che viene dato in pasto al worker è un file JavaScript il quale può avere dipendenze che devono essere importate dal file stesso in quanto il worker thread non ha nessun punto di contatto con la pagina che lo ha lanciato. Per imortare le dipendenze possiamo utilizzare la funzione importScripts che accetta in input uno o più url corrispondenti ai file. I file possono provenire sia dallo stesso dominio dell'applicazione che da domini esterni (ad esempio una CDN).
importScripts('file1.js'); importScripts('file1.js', 'file2.js'); importScripts('//mycdn.com/file1.js');
Il codice è abbastanza semplice da capire, nel primo caso viene importato un file, nel secondo caso vengono importati due file, mentre nel terzo caso viene importato un file da una sito esterno.
Nel caso si verifichi un'eccezione di caricamento del file, il web worker si arresta e rilancia un'eccezione di tipo NETWORK_ERROR che può essere gestita da chi istanzia il web worker.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare una libreria CSS universale - Rotazione degli elementi
Evitare il flickering dei componenti nel prerender di Blazor 8
Gestione dell'annidamento delle regole dei layer in CSS
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Cambiare la chiave di partizionamento di Azure Cosmos DB
Usare lo spread operator con i collection initializer in C#
Sfruttare al massimo i topic space di Event Grid MQTT
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core
Gestire la cancellazione di una richiesta in streaming da Blazor
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Usare le navigation property in QuickGrid di Blazor