Làm cách nào để bỏ lại thời gian chờ trong Node.js?

Lam Cach Nao De Bo Lai Thoi Gian Cho Trong Node Js



Trong Node.js, “ Bộ hẹn giờ ” mô-đun lên lịch cho tác vụ có thể được thực hiện sau một khoảng thời gian cụ thể với sự trợ giúp của một số phương thức tích hợp sẵn. Mô-đun này cũng cung cấp một “ Hết giờ ” lớp được tạo theo mặc định trong nội bộ khi được lên lịch “ setTimeout ()' hoặc là ' tập khoảng thời gian ()” thực thi. Lớp này tiếp tục hoạt động ngay cả sau khi các phương thức được chỉ định đã bị dừng hoặc hủy. Do đó, người dùng được yêu cầu dừng nó để vòng lặp sự kiện có thể dừng lại.

Bài viết này sẽ chỉ ra cách bỏ lại Thời gian chờ trong Node.js.







Làm cách nào để bỏ lại thời gian chờ trong Node.js?

Để rời khỏi hoặc hủy việc thực hiện vòng lặp sự kiện sau khi hủy các phương thức lập lịch, hãy sử dụng lệnh “ hủy giới thiệu ()' và ' giới thiệu ()”. Các ' hủy giới thiệu ()” yêu cầu “ Hết giờ ” để hủy kích hoạt việc thực thi vòng lặp sự kiện vì nó không yêu cầu nữa. Mặt khác, “ giới thiệu ()” tham chiếu phương thức “ hẹn giờ ” đối tượng để kiểm tra xem nó đang hoạt động hay bị vô hiệu hóa sau khi gọi “ hủy giới thiệu ()' phương pháp.



Các ' hủy giới thiệu ()” dừng việc thực thi vòng lặp sự kiện nếu không có tiến trình nào khác để chạy trước khi gọi hàm gọi lại đã chỉ định. Khi tất cả đã hoàn tất, “ giới thiệu ()” sẽ xác minh xem liệu “ Hết giờ ” đối tượng có bị vô hiệu hóa hay không.



Cú pháp của phương thức “ref()”

Hoạt động của “ giới thiệu ()” dựa trên cú pháp tổng quát được nêu dưới đây:





hết giờ. giới thiệu ( )

Cú pháp của phương thức “unref()”

Hoạt động của “ quá trình.unref ()” phụ thuộc vào cú pháp cơ bản được viết dưới đây:

hết giờ. hủy giới thiệu ( )

Thông số : Cả hai cú pháp xác định ở trên đều không cần bất kỳ đối số bổ sung nào để thực hiện chức năng chính của chúng.



Giá trị trả về: Các ' giới thiệu ()' Và ' hủy giới thiệu ()” cung cấp một phương thức “ Không có ” kiểu trả về.

Ví dụ: Áp dụng các phương thức “ref()” và “unref()” để dừng đối tượng “Timeout”

Ví dụ này cho thấy việc triển khai thực tế của “ giới thiệu ()' Và ' hủy giới thiệu ()” để kiểm soát hành vi mặc định của vòng lặp sự kiện và hủy bỏ “ Hết giờ ' sự vật:

đã từng là Hết giờ = setTimeout ( chức năng Niềm vui của tôi ( ) {
bảng điều khiển. nhật ký ( 'Thời gian chờ đã được đặt trong 1000 mili giây' , 1000 ) ;
} ) ;
bảng điều khiển. nhật ký ( '2.' , Hết giờ. hasRef ( ) ) ;
bảng điều khiển. nhật ký ( '3.' , Hết giờ. giới thiệu ( ) ) ;
bảng điều khiển. nhật ký ( '4. ' , Hết giờ. hủy giới thiệu ( ) ) ;
bảng điều khiển. nhật ký ( '5.' , Hết giờ. hasRef ( ) ) ;
Hết giờ. giới thiệu ( )
bảng điều khiển. nhật ký ( '6.' , Hết giờ. hasRef ( ) ) ;
rõ ràngHết giờ ( Hết giờ ) ;
bảng điều khiển. nhật ký ( '7. Đã hết thời gian chờ!' ) ;

Giải thích về các dòng mã trên được viết dưới đây:

  • Thứ nhất, “ Hết giờ ” đối tượng áp dụng “ setTimeout ()” xác định một hàm để hiển thị câu lệnh tác vụ đã chỉ định sau khoảng thời gian trễ nhất định. Phương thức này trả về một “ Hết giờ ” đối tượng bên trong.
  • Tiếp theo, “ console.log ()” sử dụng phương thức “ hasRef ()” để kiểm tra xem “ Hết giờ ()” đối tượng có tồn tại hay không. Nó trả về giá trị “boolean” làm đầu ra.
  • Sau đó, “ console.log ()” sử dụng phương thức “ giới thiệu ()” để in kết quả trả về “ Hết giờ ' sự vật.
  • Bây giờ, “ hủy giới thiệu ()” sẽ vô hiệu hóa “ Hết giờ ” đối tượng nếu nó tồn tại và sau đó xác minh kết quả thông qua “ hasRef ()' phương pháp.
  • Cuối cùng, hãy tham khảo “ Hết giờ ” một lần nữa, kiểm tra sự tồn tại của nó và sau đó “dừng” khoảng thời gian bằng cách sử dụng “ rõ ràngHết giờ ()' phương pháp.

đầu ra

Thực hiện “ ứng dụng .js” bằng cách sử dụng tệp “ đã cho nút ' yêu cầu:

ứng dụng nút. js

Đầu ra bên dưới trước tiên cho thấy sự tồn tại của “ Hết giờ ” rồi tắt nó và dừng khoảng thời gian tương ứng:

Đó là tất cả về việc rời khỏi “ Hết giờ ” đối tượng phía sau trong Node.js.

Phần kết luận

Để lại ' Hết giờ ” đối tượng sử dụng tích hợp sẵn “ hủy giới thiệu ()' và ' giới thiệu ()” các phương thức của “ Hết giờ ' lớp học. Cả hai phương pháp này đều thực hiện các thao tác dựa trên tên và chức năng của chúng. Các phương thức này xử lý hành vi mặc định của vòng lặp sự kiện. Bài viết này đã minh họa tất cả các cách tiếp cận có thể để loại bỏ Hết thời gian chờ trong Node.js.