Tags: #go #guides
panic
signals “the programmer has made a fundamental mistake and execution cannot continue safely”, whereas os.Exit
signals “the programmer has decided that the process should terminate here” — different meanings. Also, important difference in behavior: panic
will unwind the callstack, which means it will call any pending defer
statements; os.Exit
will just do a hard kill, so it won’t.