이 가이드에서는 Node.js의 Blocking에 대해 설명합니다.
Node.js의 차단을 이해하시나요?
Node.js의 차단을 이해하려면 “ FS ” 모듈은 프로젝트 요구사항에 따라 활용될 수 있습니다. Node.js에서 “라는 키워드를 포함하는 모든 메소드는 동조 ' 좋다 ' 읽기파일동기화() ', ' 이름 바꾸기동기화() ” 등은 동기식 또는 차단 방법으로 간주됩니다.
Node.js의 이러한 차단 방법 예제 중 일부는 아래에 설명되어 있습니다.
예 1: “fs.renameSync()” 차단 방법 사용
“ fs.renameSync() ” 동기 방법은 폴더 이름을 이전 이름이나 경로에서 새 이름이나 경로로 바꿉니다. 차단 동작은 지정된 작업, 즉 폴더 이름 바꾸기가 완료되지 않을 때까지 다른 모든 작업의 실행을 중단합니다.
통사론
'의 기본 구문 fs.renameSync() ” 메소드는 아래와 같이 작성됩니다.
fs. 이름 바꾸기동기화 ( 옛 이름, 새 이름 )위의 구문은 “ fs.renameSync() ”에는 수정해야 할 파일의 경로와 설정할 업데이트 파일 경로만 필요합니다.
'를 차단하는 작업을 이해하는 예를 들어 보겠습니다. 이름 바꾸기동기화() ” Node.js의 메서드:
fs가 있어요 = 필요하다 ( 'fs' ) ;fs. 이름 바꾸기동기화 ( '유즈케이스.txt' , 'demoAs.json' ) ;
콘솔. 통나무 ( '폴더 이름이 성공적으로 변경되었습니다' )
위의 코드 조각에서:
- 첫째, “ FS ” 모듈을 가져와서 “라는 이름의 새 변수에 객체로 저장합니다. FS '.
- 그런 다음 '를 호출합니다. 이름 바꾸기동기화() ” 메소드를 사용하여 이전 이름과 새 이름을 매개변수로 전달합니다.
- 동기식 코드이므로 콜백 함수를 활용할 필요가 없습니다.
- 또한 콘솔에 더미 메시지를 표시하여 프로세스 차단을 시각적으로 확인합니다.
생성된 출력은 차단 '의 도움으로 해당 폴더의 이름이 성공적으로 변경되었음을 보여줍니다. 이름 바꾸기동기화() ' 방법:
예 2: 'mkdirSync()' 차단 방법 사용
“ mkdir동기화() ”는 “의 사전 정의된 동기 방식입니다. FS ” 파일 시스템에 폴더/디렉토리를 생성하는 모듈입니다.
통사론
'의 일반화된 구문 mkdir동기화() ” 메소드는 아래와 같이 작성됩니다.
mkdirSync ( 경로, 옵션 )“ mkdir동기화() ”는 다음 두 매개변수에서만 작동합니다.
- 길: 생성해야 하는 디렉터리의 정확한 경로나 이름을 지정합니다.
- 옵션: 폴더를 재귀적으로 생성할지 여부를 정의하는 선택적 매개변수입니다.
'를 차단하는 코드 예제를 살펴보겠습니다. mkdir동기화() ' 방법:
콘솔. 통나무 ( '차단 방법' ) ;fs가 있어요 = 필요하다 ( 'fs' ) ;
fs. mkdirSync ( '사용 사례' ) ;
콘솔. 통나무 ( '폴더 이름이 성공적으로 변경되었습니다' ) ;
위 코드에서는 변환할 디렉터리 이름이 “ mkdir동기화() ' 방법. 이 메소드는 '에 의해 호출됩니다. FS ” 더미 메시지와 함께 모듈 개체.
생성된 출력은 ' mkdir동기화() ” 메소드가 구현되었으며 이 메소드가 완료될 때까지 향후 프로세스를 차단합니다.
예 3: 'rmdirSync()' 차단 방법 사용
“ rmdir동기화() ”는 지정된 경로에서 폴더를 삭제하는 동기 방법입니다. 동기식 동작은 지정된 작업, 즉 폴더 제거가 완료되지 않을 때까지 다른 모든 작업의 실행을 차단합니다.
통사론
'의 일반화된 구문 fs.rmdirSync() ” 메소드는 아래와 같이 작성됩니다.
fs. rmdir동기화 ( 경로, 옵션 )위의 구문은 “ rmdir동기화() '는 '에서만 작동합니다. 길 ' 그리고 ' 옵션 ” 매개변수.
아래 코드 조각을 방문하여 프로젝트에서 대상 폴더를 삭제한 다음 삭제 후 프로젝트에서 해당 폴더의 가용성을 확인하세요.
const FS = 필요하다 ( 'fs' ) ;fs. rmdir동기화 ( '사용 사례' )
콘솔. 통나무 ( '폴더가 성공적으로 삭제되었습니다' ) ;
폴더였습니다 = fs. 존재동기화 ( '사용 사례' ) ;
콘솔. 통나무 ( '폴더가 존재합니다:' , 폴더 ) ;
위의 코드 줄에서:
- 첫째, “ rmdir동기화() ' 메소드는 가져온 '을 통해 호출됩니다. FS ” 모듈 객체에는 삭제해야 하는 파일 이름이 파라미터로 전달됩니다.
- 다음으로는 “ 콘솔.로그() ” 메소드는 확인 메시지를 표시합니다.
- 그 후, “ 존재동기화() ” 메소드도 호출되어 해당 폴더가 현재 디렉토리에 존재하는지 여부를 나타냅니다. 이 메소드의 결과 또는 출력은 ' 폴더 ” 변수입니다.
- 마지막으로 “ 콘솔.로그() ” 메소드는 “의 값을 표시합니다. 폴더 ' 콘솔의 변수입니다.
생성된 출력에는 ''를 차단하여 대상 폴더가 삭제되었음을 보여줍니다. rmdir동기화() ' 방법:
이것이 Node.js의 차단에 관한 전부입니다.
결론
“ 블로킹 ” 코드는 현재 프로세스가 완전히 실행될 때까지 모든 프로세스의 실행을 중지합니다. 출력이 이전 함수 결과에 종속되는 종속 메서드나 함수에 특히 사용됩니다. 차단 코드는 프로세스를 순차적으로 수행해야 하는 경우에도 좋은 선택입니다. 이 가이드에서는 Node.js의 차단에 대한 자세한 정보를 설명했습니다.