JS de un solo subproceso

1. ¿Cómo demostrar que js se ejecuta en un solo hilo?
La función de devolución de llamada de * setTimeout () se ejecuta en el subproceso principal. La función de devolución de llamada del
temporizador solo se puede ejecutar después de que se ejecuten todos los códigos en la pila en ejecución
. 2. ¿Por qué js usa el modo de un solo subproceso en lugar de multiproceso ¿modo?
* Como lenguaje de programación del navegador, el objetivo principal de javascript es interactuar con los usuarios y manipular el DOM.
* Esto determina que solo puede ser de un solo subproceso, de lo contrario traerá problemas de sincronización muy complicados. (Reducir la sobrecarga causada por la operación de sincronización)
* Incluso con los trabajadores web H5, solo hay un hilo para actualizar la interfaz de operación
. 3. Clasificación del código:
* Código de inicialización
* Código de devolución de llamada
4. El flujo básico del código de ejecución del motor js
* Ejecute primero el código de inicialización: contiene algunos códigos especiales.
* Establecer el temporizador
* Monitoreo de enlace
* Enviar una solicitud ajax
* El código de devolución de llamada se ejecutará en un momento determinado más tarde (ejecución asíncrona, es decir, la función de devolución de llamada se ejecutará después de que se ejecute el código de inicialización)

	        setTimeout(function(){
    
    
				console.log('1000');
			},1000);
			setTimeout(function(){
    
    
			    console.log('2000');	
			},2000);
			function test(){
    
    
				console.log('test()');
			}
			test();
			console.log('alert()函数终止主线程之前');
			alert('----------------');   //alert()函数会终止主线程的执行,同时暂停计时器,函数结束后再恢复主线程的执行
			console.log('alert()函数终止主线程之后');

Supongo que te gusta

Origin blog.csdn.net/Vodka688/article/details/113796791
Recomendado
Clasificación