Skip to main content

Tunda, Panik & Pulihkan Golang

tunda panik pulihkan

Tunda, Panik & Pulihkan

Go memiliki pernyataan khusus yang disebut penundaan yang menjadwalkan panggilan fungsi untuk dijalankan setelah fungsi selesai. Perhatikan dan silakan ikuti contoh coding berikut:

package main 
import "fmt" 
func first() { 
fmt.Println("1st") } 
func second() { 
fmt.Println("2nd") } 
func main() { 
defer second() 
first()
}

Tunda, Panik & Pulihkan Golang
hasil coding


Program ini mencetak 1st diikuti oleh 2nd. Pada dasarnya menunda memindahkan panggilan kedua ke akhir fungsi, untuk sebaliknya silakan lihat contoh coding dibawah:
func main () {
second ()
first () }
tunda panik pulihkan golang
hasil coding


menunda sering digunakan ketika sumber daya harus dibebaskan dalam beberapa cara tertentu. Misalnya ketika kita membuka file, kita perlu memastikan untuk menutupnya nanti. Dengan penundaan seperti ini :
f, _: = os.Open (filename) tunda f.Close ()
Cara ini memiliki 3 keuntungan: 
  1. itu membuat panggilan close dekat dengan panggilan open, sehingga lebih mudah untuk dipahami, 
  2. jika fungsi memiliki beberapa pernyataan kembali (mungkin satu dalam if dan satu di lain) close akan terjadi sebelum keduanya dari printah tersebut terjadi, dan 
  3. fungsi yang ditangguhkan dijalankan bahkan jika terjadi panik run-time.

Panik & Pulih

Sebelumnya kita membuat fungsi yang disebut fungsi panik untuk menyebabkan kesalahan waktu proses. Kita dapat menangani panik run-time dengan fungsi pemulihan bawaan. memulihkan menghentikan kepanikan dan mengembalikan nilai yang dilewatkan ke panggilan untuk panik. Kita mungkin tergoda untuk menggunakannya seperti ini:

package main 
import "fmt" 
func main() { 
panic("PANIC") 
str := recover() 
fmt.Println(str) }


Tetapi panggilan untuk memulihkan tidak akan pernah terjadi dalam kasus ini karena panggilan untuk panik segera menghentikan eksekusi fungsi. Sebaliknya kita harus memasangkannya dengan penundaan seperti coding berikut:

package main
import "fmt"
func main() { 
defer func() { 
str := recover() 
fmt.Println(str) }()
panic("PANIC") }

Tunda, Panik & Pulihkan Golang
hasil coding


Kepanikan umumnya menunjukkan kesalahan programmer (misalnya mencoba mengakses indeks array yang di luar batas, lupa untuk menginisialisasi peta, dll) atau kondisi luar biasa yang tidak ada cara mudah untuk memulihkannya. (Oleh karena itu diberi nama "PANIC")



MATERI GOLANG

Jika kamu baru di pembelajaran golang, silakan untuk belajar dari materi pertama 

Comments

Popular posts from this blog

Menambahkan Peraturan Komentar Pada Blog

Menambahkan Peraturan Komentar Pada Blog : Ngblog Menulis sebuah artikel dan dikomentari dengan link aktif/promosi produk dan kata kata spam lainnya memang tidak mengenakan anda mungkin akan sangat merasa kecewa sekali, anda mungkin seperti menulis sebuah artikel namun tidak dihargai karyanya oleh orang lain. Mungkin membuat aturan berkomentar di blog adalah salah 1 cara menetralisirnya, mungkin jika ada aturan tersebut orang berpikir 2 kali untuk meninggalkan komentar Spam, lalu bagaimana cara membuat aturan komentar tersebut? langsung saja kita praktekan Ikuti langkah berikut : Login ke bloger,masuk ke blog yang anda inginkan, Klik Setelan -> POS-KOMENTAR   Scroll kebawah dan cari menu "pesan formulir komentar" klik tambahkan , dan isi kolom sesuai keinginan kalian atau peraturan yang kalian inginkan.  Setelah selesai silakan klik simpan setelan dipojok kanan atas. Lihat hasilnya di blog kalian ,akan seperti ini : Jika ada pertanyaan...

Traha Infinity a lancé une campagne événementielle de pré-inscription

Moai Games a officiellement annoncé la sortie d’ un  nouveau  MMORPG  intitulé  Traha Infinity , dans la première moitié de 2022. Ce jeu mobile devrait se dérouler 200 ans avant les événements des précédents jeux  Traha , il a  des  graphismes  Full 3D  et optimisés performances haut de gamme pour smartphones. Traha a  été un énorme succès en Corée avec 4,2 millions de précommandes avant sa sortie officielle en 2019, le jeu mobile n’a jamais eu de sortie mondiale. Ce jeu a été développé par Moai Games et publié par  Nexon , et est devenu l’un des jeux les plus vendus de l’époque. Et maintenant,  Traha Infinity  continuera le même monde comme une suite, plutôt une préquelle. Le nouveau jeu présentera la même vision du monde et la même topographie que le jeu précédent, mais présentera un nouveau scénario. Ils se vantent d’ une qualité graphique  Full 3D haut  de gamme ainsi que d’un système optimisé pour les smartphones. Les joueurs pourront explorer l...

Contoh Program C++ : Konversi Bilangan Hexadesimal, Oktal , Biner.

Hai Pembaca FajarYusuf.Com yang pintar dan berwawasan tinggi, kali ini FajarYusuf.Com akan post Contoh Program C++ : Konversi Bilangan Hexadesimal, Oktal , Biner . Mari kita membuat program konversi bilangan yang sangat mudah di buat dengan menggunakan bahasa pemrograman C++. Yaitu dengan menggunakan type data long, untuk Hexadesimal dengan rumus : <<hex<<desimal (merubah dari bilangan Desimal ke Hexadesimal) , untuk Oktal dengan rumus : <<oct<<desimal (merubah dari bilangan Desimal ke Oktal). Dan untuk biner dilakukan pembagian 2. Contoh Coding Program C++ Konversi Bilangan: #include<iostream> using namespace std; int main() { long desimal, pembagi=1073741824, bit; cout<<"Nilai Desimal : "; cin>>desimal; cout<<"Hexadesimal = "<<hex<<desimal<<endl; cout<<"Oktal = "<<oct<<desimal<<endl; ...