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
Utilizzare la libreria Benchmark.NET per misurare le performance
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Gestire errori funzionali tramite exception in ASP.NET Core Web API
Usare le variabili per personalizzare gli stili CSS
Recuperare un elemento inserito nella cache del browser tramite API JavaScript
Creare alias per tipi generici e tuple in C#
Criptare la comunicazione con mTLS in Azure Container Apps
Gestire undefined e partial nelle reactive forms di Angular
Gestire liste di tipi semplici con Entity Framework Core
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Generare file PDF da Blazor WebAssembly con iText
Effettuare delete massive con Entity Framework Core 7
I più letti di oggi
- Riordinare le righe di una GridView di ASP.NET con jQuery
- Creazione di un alarm con suono personalizzato con Windows Phone 7.1
- Utilizzare la session affinity con Azure Container Apps
- Blue-green deployment con Azure Web App e DevOps
- Ed infine anche il calendario :)
- Configurare la diagnostica di Azure attraverso Visual Studio
- Recuperare la data di creazione di un tag tramite una pipeline YAML di Azure DevOps
- Microsoft Security Bulletin MS05-002
- .NET Core e dispositivi IoT
- Eseguire attività pianificate con Azure Container Jobs