Palavra-chave Defer em Golang

Em Go, as instruções defer atrasam a execução de uma função ou método ou de um método anônimo até que as funções próximas retornem. Em outras palavras, os argumentos para adiar funções ou métodos são avaliados imediatamente, mas não são executados até que as funções próximas retornem. Você pode criar um método adiado, uma função ou uma função anônima usando a palavra-chave defer.

Palavra-chave Defer em Golang

Sintaxe:

// Hàm
defer func func_name(parameter_list Type)return_type{
// Code
}

// Phương thức
defer func (receiver Type) method_name(parameter_list){
// Code
}

defer func (parameter_list)(return_type){
// code
}()

Nota importante:

  • Na linguagem Go, várias instruções defer são permitidas no mesmo programa e são executadas na ordem LIFO (Último a Entrar, Primeiro a Sair), conforme mostrado no Exemplo 2.
  • Em instruções defer, os argumentos são avaliados quando a instrução defer é executada, não quando ela é chamada.
  • As instruções de adiamento são frequentemente usadas para garantir que os arquivos sejam fechados quando sua necessidade terminar, ou para fechar canais, ou para detectar problemas no programa.

Agora vamos ver um exemplo para entender melhor.

Exemplo 1:

// Chương trình Go minh họa
// khái niệm của lệnh defer
package main

import "fmt"

// Các hàm
func mul(a1, a2 int) int {

	res := a1 * a2
	fmt.Println("Result: ", res)
	return 0
}

func show() {
	fmt.Println("Hello!, Quantrimang.com")
}

// Hàm chính
func main() {

	// Gọi hàm mul() 
	// Tại đây hàm mul hoạt động
	// như một hàm bình thường
	mul(23, 45)

	// Gọi hàm mul()
	// Dùng từ khóa defer 
	// Hàm the mul() 
	// là hàm defer
	defer mul(23, 56)

	// Gọi hàm show() 
	show()
}

Resultado:

Result:  1035
Hello!, Quantrimang.com
Result:  1288

Explicação: No exemplo acima, temos duas funções chamadas mul() e show() . Enquanto a função show() é chamada normalmente na função main() , a função mul() é chamada de duas maneiras diferentes:

  • Primeiro, chamamos a função mul normalmente (sem a palavra-chave defer), ou seja, mul(23, 45) e ela é executada quando a função é chamada (Saída: Resultado: 1035).
  • Em segundo lugar, chamamos a função mul() como uma função defer usando a palavra-chave defer, ou seja, defer mul(23, 56) e ela executa (Saída: Resultado: 1288) quando todos os métodos circundantes retornam.

Exemplo 2:

// Minh họa chương trình Go
// dùng nhiều lệnh defer, để minh họa chính sách LIFO 
package main

import "fmt"

// Các hàm
func add(a1, a2 int) int {
	res := a1 + a2
	fmt.Println("Result: ", res)
	return 0
}

// Hàm chính
func main() {

	fmt.Println("Start")

	// Nhiều lệnh defer
	// Triển khai theo thứ tự LIFO 
	defer fmt.Println("End")
	defer add(34, 56)
	defer add(10, 10)
}

Resultado:

Start
Result:  20
Result:  90
End

golang, programação golang, programação go, defer golang, programação defer em golang, como usar defer golang, guia para usar defer golang

Deixar um comentário

Como corrigir erros no Microsoft Teams e como usar a ajuda

Como corrigir erros no Microsoft Teams e como usar a ajuda

Cansado do erro "Como usar a Ajuda" do Microsoft Teams que está bloqueando seu fluxo de trabalho? Obtenha soluções passo a passo que funcionam nas versões mais recentes. Limpe o cache, atualize e muito mais — sem precisar de conhecimentos técnicos!

Como corrigir o erro de atalho do Microsoft Teams na área de trabalho

Como corrigir o erro de atalho do Microsoft Teams na área de trabalho

Frustrado com o erro de atalho do Microsoft Teams na área de trabalho? Siga nosso guia passo a passo comprovado para resolvê-lo rapidamente e voltar a fazer chamadas de vídeo e chats sem problemas. Sem necessidade de conhecimentos técnicos!

Como alterar a imagem de fundo do Microsoft Teams

Como alterar a imagem de fundo do Microsoft Teams

Descubra instruções passo a passo sobre como alterar a imagem de fundo do Microsoft Teams. Personalize reuniões no computador, no celular e na web com facilidade, usando os recursos mais recentes para videochamadas profissionais ou divertidas.

Como corrigir erros de reprodução de mídia no Microsoft Teams em 2026

Como corrigir erros de reprodução de mídia no Microsoft Teams em 2026

Cansado dos erros de reprodução de mídia do Microsoft Teams arruinando suas reuniões de 2026? Siga nosso guia passo a passo, elaborado por especialistas, para corrigir problemas de áudio, vídeo e compartilhamento rapidamente — sem precisar de conhecimentos técnicos. A colaboração perfeita está ao seu alcance!

Onde o Microsoft Teams baixa os arquivos no seu computador?

Onde o Microsoft Teams baixa os arquivos no seu computador?

Descubra onde o Microsoft Teams baixa arquivos no seu computador. Saiba onde os arquivos são baixados por padrão no Windows, Mac e Linux, como alterá-los e dicas para encontrar arquivos instantaneamente. Economize tempo com este guia completo!

Solução de problemas de configurações de erro de proxy do Microsoft Teams

Solução de problemas de configurações de erro de proxy do Microsoft Teams

Com dificuldades para resolver o erro de proxy do Microsoft Teams? Descubra etapas comprovadas para solucionar esse problema. Limpe o cache, ajuste as configurações de proxy e volte a fazer chamadas sem interrupções em minutos com nosso guia especializado.

Como corrigir problemas de som abafado ou ausência de som no microfone do Microsoft Teams

Como corrigir problemas de som abafado ou ausência de som no microfone do Microsoft Teams

Cansado de som abafado ou inexistente no microfone do Microsoft Teams? Descubra como resolver problemas de microfone no Microsoft Teams com passos rápidos e comprovados. Áudio nítido em breve!

Resolvendo o erro de ingresso em reunião do Microsoft Teams por meio de link direto.

Resolvendo o erro de ingresso em reunião do Microsoft Teams por meio de link direto.

Está com dificuldades para entrar em uma reunião no Microsoft Teams? Descubra passos comprovados para resolver o problema através de links diretos. Soluções rápidas para entrar em reuniões sem problemas – sem necessidade de conhecimentos técnicos!

Solução de problemas de erros no Microsoft Teams para Mac relacionados ao Keychain

Solução de problemas de erros no Microsoft Teams para Mac relacionados ao Keychain

Está com dificuldades para resolver problemas com o Keychain no Microsoft Teams para Mac? Descubra soluções comprovadas, passo a passo, para macOS e volte a colaborar sem problemas. Soluções rápidas aqui!

Por que não consigo ver as salas de discussão na minha reunião do Teams?

Por que não consigo ver as salas de discussão na minha reunião do Teams?

Frustrado porque as Salas Simultâneas não aparecem na sua reunião do Teams? Descubra os principais motivos pelos quais você não consegue ver as Salas Simultâneas no Teams e siga nossas soluções passo a passo para que elas funcionem perfeitamente em minutos. Ideal para organizadores e participantes!