欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Node.js中防止錯(cuò)誤導(dǎo)致的進(jìn)程阻塞的方法

 更新時(shí)間:2016年08月11日 09:56:37   投稿:mrr  
這篇文章主要介紹了Node.js中防止錯(cuò)誤導(dǎo)致的進(jìn)程阻塞的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下

在Node.js中,當(dāng)某個(gè)回調(diào)函數(shù)發(fā)生了錯(cuò)誤,整個(gè)進(jìn)程都會(huì)崩潰,影響后面的代碼執(zhí)行。

Node.js這樣處理,是因?yàn)樵诎l(fā)生未被捕獲的錯(cuò)誤時(shí),進(jìn)程的狀態(tài)就不確定。之后也就無法正常工作了。如果錯(cuò)誤始終不處理的話,就回一直拋出意料之外的錯(cuò)誤,這樣不利于調(diào)試。

防止錯(cuò)誤導(dǎo)致的進(jìn)程阻塞的方法主要有如下兩種:

一. try-catch

try-catch允許進(jìn)行異常捕獲,并讓代碼繼續(xù)執(zhí)行下去:

例如:

當(dāng)函數(shù)拋出錯(cuò)誤時(shí),代碼就停止執(zhí)行了:

(function() {
var a = 0;
a();
console.log("get here."); // 不執(zhí)行
})();

使用try-catch進(jìn)行錯(cuò)誤處理后,代碼仍可繼續(xù)執(zhí)行:

(function() {
var a = 0;
try {
a();
} catch (e) {
console.log(e);
}
console.log("get here."); // get here.
})();

try-catch不能捕獲未來執(zhí)行函數(shù)錯(cuò)誤

要捕獲未來才執(zhí)行到的函數(shù)所拋出的錯(cuò)誤時(shí)不可能的。這會(huì)直接拋出未捕獲的異常,并且catch代碼塊永遠(yuǎn)都不會(huì)被執(zhí)行:

try {
setTimeout(function() {
throw new Error("here");
}, 10);
} catch(e) {
console.log(e);
}

這就是為什么在Node.js中,每步豆芽正確進(jìn)行錯(cuò)誤處理的原因。

添加uncatchException處理器

若添加了 uncatchException 處理器,當(dāng)函數(shù)拋出錯(cuò)誤時(shí),進(jìn)程也不會(huì)退出。

process.on("uncatchException", function(e) {
console.log(e);
process.exit(1);
});

以上所述是小編給大家介紹的Node.js中防止錯(cuò)誤導(dǎo)致的進(jìn)程阻塞的方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 在windows上用nodejs搭建靜態(tài)文件服務(wù)器的簡(jiǎn)單方法

    在windows上用nodejs搭建靜態(tài)文件服務(wù)器的簡(jiǎn)單方法

    這篇文章主要介紹了在windows上用nodejs搭建靜態(tài)文件服務(wù)器的簡(jiǎn)單方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-08-08
  • 快速刪除node_modules的幾種方式小結(jié)

    快速刪除node_modules的幾種方式小結(jié)

    這篇文章主要介紹了快速刪除node_modules的幾種方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Node.js基礎(chǔ)入門之path模塊,url模塊,http模塊使用詳解

    Node.js基礎(chǔ)入門之path模塊,url模塊,http模塊使用詳解

    這篇文章主要為大家介紹了Node.js中的三個(gè)模塊(path、url、http)的使用詳解,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-03-03
  • Node.js處理多個(gè)請(qǐng)求的技巧和方法

    Node.js處理多個(gè)請(qǐng)求的技巧和方法

    Node.js在處理多個(gè)請(qǐng)求方面具有優(yōu)勢(shì),它利用事件驅(qū)動(dòng)和非阻塞式I/O的特性,能夠高效地處理并發(fā)請(qǐng)求,提供快速響應(yīng)和良好的可擴(kuò)展性,這篇文章主要介紹了Node.js如何處理多個(gè)請(qǐng)求,需要的朋友可以參考下
    2023-11-11
  • Windows上node.js的多版本管理工具用法實(shí)例分析

    Windows上node.js的多版本管理工具用法實(shí)例分析

    這篇文章主要介紹了Windows上node.js的多版本管理工具用法,結(jié)合實(shí)例形式分析了Windows平臺(tái)上node.js多版本管理工具nvm-windows的相關(guān)使用技巧,需要的朋友可以參考下
    2019-11-11
  • node版本快速切換及管理方法

    node版本快速切換及管理方法

    這篇文章主要為大家介紹了node版本快速切換及管理方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Nodejs監(jiān)控事件循環(huán)異常示例詳解

    Nodejs監(jiān)控事件循環(huán)異常示例詳解

    這篇文章主要給大家介紹了關(guān)于Nodejs監(jiān)控事件循環(huán)異常的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Nodejs具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • node.js入門教程

    node.js入門教程

    這篇文章主要介紹了node.js入門教程,講解了node.js在linux和windows下的安裝,模塊的概念,NPM的使用等等,是一篇不錯(cuò)的nodejs入門文章,需要的朋友可以參考下
    2014-06-06
  • 關(guān)于npm install過程失敗的幾種處理方式

    關(guān)于npm install過程失敗的幾種處理方式

    這篇文章主要介紹了關(guān)于npm install過程失敗的幾種處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • node.js實(shí)現(xiàn)逐行讀取文件內(nèi)容的代碼

    node.js實(shí)現(xiàn)逐行讀取文件內(nèi)容的代碼

    這篇文章主要介紹了node.js實(shí)現(xiàn)逐行讀取文件內(nèi)容的代碼,本文還介紹了一個(gè)node.js的按行讀取內(nèi)容開源項(xiàng)目,需要的朋友可以參考下
    2014-06-06

最新評(píng)論