JavaScript ಫಂಕ್ಷನ್‌ಗಳು, ಪ್ರಕ್ರಿಯೆಗಳು ಮತ್ತು ಎಕ್ಸಿಕ್ಯೂಷನ್

JavaScript ಅನ್ನು ಪರಿಣಿತರಾಗಿ ಕಲಿಯಲು ಕೋಡ್ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಅಗತ್ಯವಾಗಿದೆ.

ನೀವು ತಿಳಿಯಬೇಕಾದ ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳು ಇಲ್ಲಿವೆ.

೧. JavaScript ಫಂಕ್ಷನ್‌ಗಳ ೫ ವಿಧಗಳು

೨. ಪ್ರಕ್ರಿಯೆ (Process) vs. ಥ್ರೆಡ್ (Thread)

Process ಎಂದರೆ ಚಾಲನೆಯಲ್ಲಿರುವ ಒಂದು ಪ್ರೋಗ್ರಾಂ. ಪ್ರತಿಯೊಂದು ಪ್ರಕ್ರಿಯೆಯು ತನ್ನದೇ ಆದ ಮೆಮೊರಿಯನ್ನು ಹೊಂದಿರುತ್ತದೆ. ಒಂದು ವೇಳೆ Chrome ಕ್ರ್ಯಾಶ್ ಆಗුවರೂ, Spotify ಚಾಲನೆಯಲ್ಲಿರುತ್ತದೆ ಏಕೆಂದರೆ ಅವು ಪ್ರತ್ಯೇಕ ಪ್ರಕ್ರಿಯೆಗಳಾಗಿವೆ.

Thread ಎಂಬುದು ಒಂದು ಪ್ರಕ್ರಿಯೆಯ ಒಳಗಿರುವ ಸಣ್ಣ ಘಟಕವಾಗಿದೆ. ಥ್ರೆಡ್‌ಗಳು ಒಂದೇ ಮೆಮೊರಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳುತ್ತವೆ. ಇದು ಅವುಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗಳಿಗಿಂತ ವೇಗವಾಗಿ ಮತ್ತು ಹಗುರವಾಗಿಸುತ್ತದೆ.

೩. ಸಿಂಕ್ರೋನಸ್ (Synchronous) vs. ಅಸಿಂಕ್ರೋನಸ್ (Asynchronous)

JavaScript ಸಿಂಗಲ್-ಥ್ರೆಡೆಡ್ ಆಗಿದೆ. ಇದು ಸಾಮಾನ್ಯವಾಗಿ ಒಂದು ಸಮಯದಲ್ಲಿ ಒಂದು ಕೆಲಸವನ್ನು ಮಾತ್ರ ಮಾಡುತ್ತದೆ.

Synchronous Execution: ಕೆಲಸಗಳು ಕಟ್ಟುನಿಟ್ಟಾದ ಕ್ರಮದಲ್ಲಿ ನಡೆಯುತ್ತವೆ. ಮುಂದಿನ ಸಾಲು ಪ್ರಸ್ತುತ ಸಾಲು ಮುಗಿಯುವವರೆಗೆ ಕಾಯುತ್ತದೆ. ಒಂದು ಕೆಲಸವು ಹೆಚ್ಚು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುವಲ್ಲಿ, ಇದು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನ ವೇಗವನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು.

Asynchronous Execution: ಕೆಲಸಗಳು ಈಗ ಪ್ರಾರಂಭವಾಗಿ ನಂತರ ಮುಗಿಯಬಹುದು. ಇದು ನಿಮ್ಮ ಕೋಡ್ ಬ್ಲಾಕ್ ಆಗದಂತೆ ತಡೆಯುತ್ತದೆ.

ಇದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ:

ಅಸಿಂಕ್ರೋನಸ್ ಹರಿವಿನ ಉದಾಹರಣೆ:

  1. "Hi" ಅನ್ನು ಲಾಗ್ ಮಾಡಿ
  2. ೨ ಸೆಕೆಂಡುಗಳ ಟೈಮರ್ ಪ್ರಾರಂಭಿಸಿ
  3. "End" ಅನ್ನು ಲಾಗ್ ಮಾಡಿ
  4. (೨ ಸೆಕೆಂಡುಗಳು ಕಳೆದ ನಂತರ) "Vicky" ಅನ್ನು ಲಾಗ್ ಮಾಡಿ

ಕೋಡ್ ಟೈಮರ್ ಗಾಗಿ ಕಾಯುವುದಿಲ್ಲ. ಅದು ತಕ್ಷಣವೇ "End" ಗೆ ಚಲಿಸುತ್ತದೆ.

Source: https://dev.to/kamalesh_ar_6252544786997/types-of-function-and-threads-process-and-synchronous-vs-asynchronous-in-javascript-1hhd

Optional learning community: https://t.me/GyaanSetuAi