Go EP.11 Panic ในภาษา Go

31 Oct 2021,
Share: 
Cover image

สวัสดีครับ ในบทความนี้ก็เป็น EP.11 แล้วนะครับ โดยเนื้อหาจะเป็นเรื่องเกี่ยวกับ Panic คืออะไร ใช้ทําอะไร และมีวิธีการใช้อย่างไร

สําหรับท่านใดที่ยังไม่ได้อ่าน EP.10 ท่านสามารถกลับไปอ่านก่อนได้นะครับที่นี่ Go EP.10 Defer ในภาษา Go

มาเริ่มเรียนรู้ไปด้วยกันตามหัวข้อด้านล่างเลยครับ

Panic ในภาษา Go คืออะไร

Panic เป็นคําสั่งที่บังคับโปรแกรมของเราให้เกิด Runtime Error ขึ้นมา ซึ่งเราจะใช้ในกรณีที่เราต้องการให้โปรแกรมของเราจบการทํางานทันที

ตัวอย่างเหตการณ์เรานํา Panic ไปใช้เช่น ต่อ Database ไม่ได้, อ่านไฟล์ไม่ได้ ฯลฯ ซึ่งเหตุการณ์เหล่านี้จะส่งผลการทํางานทั้งโปรแกรม

มาดูตัวอย่างการใช้งาน Panic กันดังนี้ครับ

package main

import (
	"fmt"
	"io/ioutil"
)

func main() {
	b, err := ioutil.ReadFile("myfile.json")

	if err != nil {
		panic(err)
	}

	fmt.Printf("%v", b)
}

จากตัวอย่าง Code ด้านบนจะเห็นว่าเมื่ออ่านไฟล์ไม่ได้เราจะสั่งให้ Panic ส่งผลให้เกิด Runtime error ออกมาประมาณนี้ครับ

ในจังหวะที่ Panic ออกมา จะยังไม่เกิด Runtime error ในทันทีทันใด แต่จะเกิด “PANICKING STATE” ขึ้นมาก่อนครับ เพื่อรอ Recover ครับ (เราจะเรียนรู้กันในหัวข้อถัดไปเรื่องเกี่ยวกับ Recover) แต่ถ้าไม่มี Recover ก็จะเกิด Runtime error ขึ้น และจบการทํางานของโปรแกรม

ในบทความนี้ก็มีเนื้อหาเพียงเท่านี้ครับ สําหรับบทความต่อไปจะเป็นเรื่องเกี่ยวกับ Go EP.12 Recover ในภาษา Go ซึ่งเป็นเนื้อหาต่อเนื่องจากบทความนี้ครับ กดเข้าไปอ่านต่อได้เลยครับ ขอบคุณครับ

Suggestion blogs

Unbox ไฟฉาย Fenix UC02SS

ไฟฉาย Fenix รุ่น UC02SS เป็นไฟฉายรุ่นที่ที่มีความสว่างสูงสุด 130 Lumens แสงพุ่งไกลถึง 48 เมตร จุดเด่นของรุ่นนี้คือ เป็นไฟฉายที่มีขนาดเล็กแต่ให้ความสว่างสูง ใช้แบตเตอรี่ขนาด 10180 คุณสมบัติโดยทั่วไปดังนี้

ไขข้อข้องใจโปรแกรมช่วยจองล็อตเตอรี่ lotto booking ใช้ได้จริง หรือหลอก

ประกาศผมปิดโปรแกรม lotto booking แล้วนะครับ โปรแกรมจะไม่สามารถใช้งานได้อีกต่อไป ดังนั้นคุณจะต้องลบโปรแกรมนี้ออกจากเครื่องถ้ามีผู้ใดนำกลับมาใช้งานอีก ผู้นั้นจะถูกตัดสิทธิและมีความผิดนะครับหลังจากที่ผมได้เขียนบทความImageเวลาใชก็กดที่ปุ่มนี้เพียง 1 ครั้ง จะมีหน้า tab ขึ้นมาโดย tab นี้จะพยายามเปิดหน้าเว็บ login ให้จนกว่าจะเข้าหน้า login ได้จึงหยุดทํางาน ถ้าต้องการเปิด 3 tab ก็กดปุ่มนี้ 3 ครั้ง โปรแกรมจะเปิดหน้า login ให้ 3 tab หรือ 3 หน้า วีดีโอ วิธีการใช้งาน<iframe width="560" height="315" src="https://www.youtube.com/embed/7uxAcnjXW0Y" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>lotto booking ปลอดภัยมั้ย?ผมไม่มีอะไรยื่นกันกับคุณนอกจากยืนยันด้วยเกียรติของผมว่า โปรแกรมผมไม่ได้เก็บข้อมูลของผู้ใช้งาน ไม่ได้กระทําการ hack user password ktb ของผู้ใช้งาน ไม่ได้กระทําการใดๆกับบัญชี ktb ของท่านเลย อย่างที่ผมบอกไปตอนต้นว่าโปรแกรมจะหยุดทํางานทันทีที่เปิดหน้าเว็บ login ได้ หลังจากนี้ โปรแกรมจะไม่มีบทบาทใดๆทั้งสิ้น ผมสามารถให้ดู source code ของโปรแกรมได้ครับ ในกรณีที่เกิดปัญหา

Import css ใน React

นอกจากที่เราจะ import Component อื่นๆเข้ามาใช้งานใน Component ได้ เรายังสามารถที่จะ Import ไฟล์ css เข้ามาใช้งานใน Component ได้อีกด้วย


Copyright © 2019 - 2025 thiti.dev |  v1.51.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Nostr   Youtube channel   Telegram   Email contact   วงแหวนเว็บ