"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > node.js에서 진정한 비 블로킹 함수를 작성하는 방법은 무엇입니까?

node.js에서 진정한 비 블로킹 함수를 작성하는 방법은 무엇입니까?

2025-03-10에 게시되었습니다
검색:788

How to Write Truly Non-Blocking Functions in Node.js?

예 : Promy-rapped 차단 함수

기능 longrunningfunc (val) {mod) {mod) {mod). 새로운 약속을 반환합니다 ((결의, 거부) => { 합계 = 0; for (i = 0; i

이 함수는 약속을 반환하는 동안 집행자 내의 코드가 차단됩니다. 이벤트 루프는 다른 작업을 실행하기 전에이 코드가 완료 될 때까지 기다립니다. 새로운 약속을 반환합니다 ((결의, 거부) => { settimeout (() => { 합계 = 0; for (i = 0; i

이 코드는 10 밀리 초 지연 후 장기 루프가 실행되도록 일정을 잡습니다. 그러나 지연된 실행 기간 내에 여전히 차단되고 있습니다.

진정한 비 블로킹 접근 방식

function longRunningFunc(val, mod) {
    return new Promise((resolve, reject) => {
        let sum = 0;
        for (let i = 0; i  

스레드 외부에서 코드 실행을 움직이는 기술을 사용해야합니다.

function longRunningFunc(val, mod) {
    return new Promise((resolve, reject) => {
        let sum = 0;
        for (let i = 0; i  

장기 실행 작업을 처리하려면

작업자 스레드 :
    Node.js의 실험 작업자 스레드 기능을 사용하여 단일 프로세스 내에서 여러 스레드를 생성합니다. 스레드.
  • 기존 비동기 API :
  • node.js에 의해 제공되는 비동기 조작을 활용합니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3