[英]Non-blocking setTimeout
在NodeJS中是否有可能實現setTimeout
的版本,該版本不會在最后一行代碼完成后阻止進程退出?
也就是說,條件setTimeout
的類型僅在進程仍在運行時才觸發回調函數。
實際示例:
當實現通過設置一些超時來初始化自身的庫時,您希望應用程序完成后就無需對該庫進行顯式調用以清除所有超時,並且無論如何都可以關閉應用程序。
如果看一下setTimeout的文檔,您會注意到它返回了一個timeoutObject,該對象可用於通過clearTimeout(obj)
取消超時。
因此,您可以做的是通過存儲其id對象來跟蹤創建的所有超時。 然后,您可以隨時結束所有超時。
如果您只是想退出該進程,而忽略其他所有內容,則可以使用process.exit()
(如果要返回非零錯誤代碼,則傳遞一個參數)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.