一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

log.Fatal和panic函數(shù)的區(qū)別在哪

冬至配餃子 ? 來源:GoLang全棧 ? 作者:小錕哥哥 ? 2022-08-17 11:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

要熟悉兩者區(qū)別之前,需要先了解 os.Exit() 函數(shù)。

我這里截一張 Go 源碼里面的解釋:

pYYBAGL8WYuAMsUmAAC9AkxPSW4282.png

我們需要注意兩點(diǎn):

1、應(yīng)用程序會(huì)被馬上退出

2、defer 函數(shù)不會(huì)被執(zhí)行

你可以理解這就是直接 kill -9 程序,不給任何喘氣的機(jī)會(huì)。

現(xiàn)在我們?cè)賮砜纯?log.Fatal 函數(shù)的定義:

pYYBAGL8WZqAL15tAABXom8ng4c504.png

整體來說,他在 os.Exit() 之前做了一個(gè)日志輸出。

他的流程可以理解是:

1、打印輸出內(nèi)容

2、退出應(yīng)用程序

3、defer 函數(shù)還是不會(huì)執(zhí)行

最后我們來看下 panic 的定義:

pYYBAGL8WaiAO3JTAADTJcS_EVA507.png

我們需要注意的是:

1、當(dāng)前函數(shù)立刻會(huì)停止執(zhí)行(不是主程序)

2、defer 函數(shù)執(zhí)行

3、返回給調(diào)用者 caller

4、調(diào)用函數(shù)假裝也收到了 panic 函數(shù),從而他們也會(huì)執(zhí)行以上的操作

5、遞歸執(zhí)行,直到最上層函數(shù),如果都沒函數(shù)處理這個(gè)異常,應(yīng)用程序就會(huì)停止

這和其他語言里面的 try catch 很像,但是 Go 語言里面沒有類似的語法糖。



審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    38

    文章

    3337

    瀏覽量

    59039
  • go語言
    +關(guān)注

    關(guān)注

    1

    文章

    159

    瀏覽量

    9373
  • 調(diào)用函數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    2408
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    云服務(wù)器和獨(dú)立服務(wù)器的區(qū)別在哪?一文讀懂如何選擇

    面對(duì)云服務(wù)器與獨(dú)立服務(wù)器的選擇,許多人常因概念模糊而糾結(jié)。云服務(wù)器和獨(dú)立服務(wù)器的區(qū)別在于資源分配方式、擴(kuò)展性及成本結(jié)構(gòu),選擇時(shí)需結(jié)合業(yè)務(wù)需求權(quán)衡利弊。本文將從兩者核心差異進(jìn)行對(duì)比,為大家提供參考依據(jù)。
    的頭像 發(fā)表于 05-19 10:19 ?129次閱讀

    工控機(jī)與普通臺(tái)式機(jī)的區(qū)別大揭秘

    是不是很多人都好奇工控機(jī)與普通臺(tái)式機(jī)的區(qū)別在哪里呢,今天這篇文章,就解答您的疑惑。
    的頭像 發(fā)表于 02-17 16:06 ?609次閱讀

    ads1258 IRTCR和IRTCT的區(qū)別是什么?

    請(qǐng)教:ads1258 IRTCR和IRTCT的區(qū)別在哪?手冊(cè)里沒看明白,TCR和TCRG4的區(qū)別應(yīng)該是有鉛和無鉛。多謝
    發(fā)表于 01-10 10:23

    SN74ALVC164245與SNALVC164245-EP區(qū)別在哪里呢?

    SN74ALVC164245與它的增強(qiáng)型器件SNALVC164245-EP區(qū)別在哪里呢?我對(duì)比了數(shù)據(jù)手冊(cè)發(fā)現(xiàn)兩種產(chǎn)品在電氣性能上并沒有什么差別,這個(gè)“增強(qiáng)”體現(xiàn)在哪里?
    發(fā)表于 12-12 08:31

    風(fēng)電變流器是變頻器嗎 風(fēng)電變流器和變頻器的區(qū)別在哪

    變流器也有幾率對(duì)頻率進(jìn)行更改。下面一起來了解一下風(fēng)電變流器和變頻器的區(qū)別在哪里吧。 一、風(fēng)電變流器是變頻器嗎 風(fēng)電變流器是應(yīng)用于風(fēng)力發(fā)電機(jī)組中的變流器,變流器和變頻器很多人會(huì)搞混,那么風(fēng)電變流器就是變頻器嗎?
    的頭像 發(fā)表于 12-02 01:08 ?1246次閱讀

    請(qǐng)問一下TAS5760M和TAS5760MD的區(qū)別在哪里?TAS5760MD能用軟件模式控制嗎?

    如題,請(qǐng)問一下TAS5760M和TAS5760MD的區(qū)別在哪里?TAS5760MD能用軟件模式控制嗎?是否通過I2C控制功放增益?我通過I2C控制TAS5760MD,為什么沒有ACK回應(yīng)?設(shè)備地址、寄存器和內(nèi)容確定沒有問題。
    發(fā)表于 10-30 07:37

    變頻電機(jī)和普通電機(jī)的五大區(qū)別在哪

    變頻電機(jī)和普通電機(jī)是兩種不同類型的電動(dòng)機(jī),它們?cè)谛阅?、結(jié)構(gòu)、效率、應(yīng)用和成本等方面存在顯著差異。以下是變頻電機(jī)和普通電機(jī)的五大區(qū)別: 工作原理和控制方式 變頻電機(jī)和普通電機(jī)的主要區(qū)別在于它們
    的頭像 發(fā)表于 10-25 09:34 ?3870次閱讀

    請(qǐng)問一下LM4951A與LM4951的區(qū)別在哪里?

    請(qǐng)問一下LM4951A與LM4951的區(qū)別在哪里? 我們有將LM4951替換LM4951A后,產(chǎn)品出現(xiàn)POP和CLICK音的問題。 LM4951的原理圖見附件。
    發(fā)表于 10-18 06:27

    LM3886尾綴T和TF之間主要區(qū)別在哪里?

    LM3886尾綴T和TF之間主要區(qū)別在哪里? 我一直用LM3886TF,但最近缺貨改用LM3886T替代,但是發(fā)現(xiàn)LM3886T工作相對(duì)要熱一些
    發(fā)表于 10-09 08:30

    OPA177的型號(hào)里有帶E4、G4的,有不帶的,請(qǐng)問這三種的區(qū)別在哪里?

    OPA177的型號(hào)里有帶E4、G4的,有不帶的,請(qǐng)問這三種的區(qū)別在哪里?謝謝!
    發(fā)表于 08-29 07:44

    磁環(huán)電感和線圈電感的區(qū)別在哪

    磁環(huán)電感和線圈電感是兩種常見的電感元件,它們?cè)陔娮与娐分杏兄鴱V泛的應(yīng)用。盡管它們的基本功能相似,但在結(jié)構(gòu)、性能、應(yīng)用等方面存在一些顯著的區(qū)別。 結(jié)構(gòu)差異 磁環(huán)電感和線圈電感的主要區(qū)別在于它們的結(jié)構(gòu)
    的頭像 發(fā)表于 08-20 17:23 ?1658次閱讀

    請(qǐng)問LM318和LM318-N的區(qū)別在哪里?

    請(qǐng)問LM318和LM318-N的區(qū)別在哪里?
    發(fā)表于 08-20 07:31

    LM393和LMV393的區(qū)別在哪里?

    如圖所示,LM393和LMV393的參數(shù)對(duì)照,LMV393是LM393的低電壓版本,并且靜態(tài)電流和溫度特性都好 但是我用這顆料在鼠標(biāo)上,用于鼠標(biāo)左右按鍵的控制,想詢問這兩顆料其他的差別在哪?比如說響應(yīng)速度?
    發(fā)表于 08-15 06:48

    ISO224的A和B的區(qū)別是什么?

    請(qǐng)問芯片手冊(cè)中說的高級(jí)B和低級(jí)A他們的具體區(qū)別在哪?。烤凸材R种票葐??所謂的高版本一般是優(yōu)化了什么性能呢
    發(fā)表于 08-06 07:25

    TLV4112IDGN和TLV4112IDGN的主要區(qū)別在哪?

    TLV4112IDGN和TLV4112IDGN的主要區(qū)別在哪?
    發(fā)表于 08-05 07:47