Tienes que apreciar la tenacidad de Surma. Ha estado abogando por Web Workers como un camino hacia sitios web más agradables durante muchos años. Él está de nuevo asegurándose de que todos entendamos el paisaje:
[…] independientemente de dónde mire, los subprocesos múltiples se usan en todas partes. iOS permite a los desarrolladores paralelizar fácilmente el código mediante Grand Central Dispatch, Android lo hace a través de su nuevo programador de tareas unificado WorkManager y los motores de juegos como Unity tienen sistemas de trabajo. La razón por la que cualquiera de estas plataformas no solo admite subprocesos múltiples, sino que lo hace lo más fácil posible es siempre la misma: asegúrese de que su aplicación se sienta genial.
Surma, “El estado de los trabajadores web en 2021”
Casi todas las plataformas tienen su propia versión de subprocesos múltiples, incluida la web. Es solo que en la web tenemos que “luchar” contra la naturaleza de subproceso único de JavaScript mediante el uso de Web Workers (que son “universalmente compatibles” si se está preguntando acerca de eso). La pregunta es: ¿usarlos cómo y para qué? Para este último, Surma muestra un ejemplo de un juego en el que “todo el estado de la aplicación y la lógica del juego se ejecutan en un trabajador”. Para el primero, el comunicador de la biblioteca de ayuda parece una gran reducción en el trabajo.
Personalmente, desearía que las herramientas populares simplemente… lo hicieran. No sé cómo se ve eso realmente, pero parece que el alcance de los desarrolladores realmente no está moviendo la aguja en esto. ¿Qué pasaría si herramientas populares como Apollo, que está a cargo de una gran cantidad de “estado de la aplicación”, manejaran mágicamente todo eso fuera del hilo principal? ¿Tiene sentido? ¿Es posible?