How to use constants in Golang
What is a Constant or Const in Golang? Here's what you need to know about using constants in Go.
In Go language, select statement is like switch statement , but in select statement, case statement refers to communication, i.e. sending or receiving operation on channel.

Syntax:
select{
case SendOrReceive1: // Lệnh
case SendOrReceive2: // Lệnh
case SendOrReceive3: // Lệnh
.......
default: // Lệnh
In this article, we will learn how to use default case to avoid deadlock. But first, we will learn what is deadlock case when using select command in Golang ?
Things to know about deadlock case in Golang
Deadlock: When you try to read or write data from a channel but the channel is not available. So it blocks the current execution of the goroutine and transfers control to other goroutines, but if no other goroutine is available or other goroutines are idle due to this situation, the program will crash. This phenomenon is called deadlock. As shown in the example below:
For example:
// Chương trình Go minh hoạc
// cách deadlock phát sinh
package main
// Hàm chính
func main() {
// Tạo một kênh
// Deadlock phát sinh bởi
// không có goroutine đang viết
// vào kênh này, vì thế
// lệnh select đã bị khóa mãi mãi
c := make(chan int)
select {
case <-c: }="" }="">
Result:
fatal error: all goroutines are asleep - deadlock!
goroutine 1 [chan receive]:
main.main()
To avoid this situation, we use default case in select statement. In other words, when deadlock occurs in the program, default case of select statement is executed to avoid deadlock. As in the example below, we use default case in select statement to avoid deadlock.
For example:
// Chương trình Go minh họa cách giải quyết
// vấn đề deadlock bằng case mặc định
package main
import "fmt"
// Hàm chính
func main() {
// Tạo 1 kênh
c := make(chan int)
select {
case <-c: default:="" fmt.println("!..="" default="" case..!")="" }="" }="">
Result:
!.. Default case..!
You are also allowed to use the default case when the select statement has only nil channel . As shown in the example below, channel c is nil, so the default case is executed if the default case here is not available, then the program will block forever and deadlock arises.
For example:
// Chương trình Go minh họa
// chạy case mặc định
package main
import "fmt"
// Hàm chính
func main() {
// Tạo một kênh
var c chan int
select {
case x1 := <-c: fmt.println("value:="" ",="" x1)="" default:="" fmt.println("default="" case..!")="" }="" }="">
Result:
Default case..!
What is a Constant or Const in Golang? Here's what you need to know about using constants in Go.
Variadic functions in Go allow you to pass a variable number of arguments to a function. Here's everything you need to know about variadic functions in Golang.
In Golang, named return parameters are often referred to as named parameters. Golang allows naming the return parameters or results of functions in the function signature or definition.
Keyword - Keywords are words in a language that are used for some internal processes or represent some predefined actions. Here is what you need to know about keywords in Golang.
Data types specify what type of data a valid Go variable can hold. In the Go language, types are divided into four categories as follows:
Go supports two main ways to pass arguments: Pass by Value and Pass by Reference. Go uses pass by value by default.
In Go language, you are allowed to return multiple values from a function, using the return statement. In other words, in a function, a return statement can return multiple values.
Golang like most other programming languages has switch statement. Here is how to use switch statement in Golang.
Anonymous structs in Golang are temporary structures with no names used for one-time purposes, while anonymous fields allow embedding of unnamed fields.
What is Rune in Golang? How to use Rune in Golang? This article will give you the answer.
Operators allow us to perform different types of operations on operands. In Go language, operators can be classified based on their different functions.
_(underscore) in Golang is called Blank Identifier. Identifier is a user-defined name of program elements used for identification purposes.
Hello, World! is the first basic program in any programming language. You can write this first program in Golang by following the steps below.
Golang can be easily installed on Windows. Here is a step-by-step guide to install Golang on Windows.
Tired of Microsoft Teams Error 2400 blocking your connection? Follow our proven, step-by-step fixes to solve "Unable to Connect to Servers" and get back to productive meetings fast.
Struggling to locate your Microsoft Teams recording? Discover exactly where Teams saves meeting files in OneDrive or SharePoint, plus quick steps to find and access them instantly. No more lost recordings!
Struggling with Microsoft Teams "Error G" audio? Discover step-by-step fixes for microphone and speaker issues. Quick, easy solutions to get back to seamless meetings without frustration. Works on Windows, Mac & more!
Tired of the frustrating Microsoft Teams Vcruntime140.dll missing error crashing your meetings? Discover proven, step-by-step fixes to resolve it fast and restore smooth teamwork. No tech skills needed!
Struggling with Microsoft Teams 'Undefined Error' (2026)? Discover proven, step-by-step fixes like clearing cache, updating the app, and more. Get back to seamless collaboration fast!
Discover simple, step-by-step methods to disable Microsoft Teams at startup and unlock better PC performance. Faster boot times, less resource drain—perfect for Windows users seeking smooth operation.
Stuck with Microsoft Teams "Network Error" offline? Discover proven, step-by-step solutions to fix Microsoft Teams network error offline quickly. Get back online fast—no tech skills needed!
Struggling with Microsoft Teams Error 4oggx? Discover proven fixes to resolve sign-in failures, crashes, and connectivity issues fast. Get back to productive calls without frustration!
Encountering the frustrating Microsoft Teams "Remove Account" Data Error? Discover quick, reliable fixes like clearing cache, resetting the app, and more to get back to seamless collaboration without losing data. Updated with the latest solutions.
Tired of the frustrating Microsoft Teams "Layout Error" Sidebar? Follow our proven, step-by-step troubleshooting guide with the latest fixes to get your Teams sidebar working smoothly again. No tech skills needed!
Stuck with Microsoft Teams offline error in 2026? Discover proven troubleshooting steps, common causes, and quick fixes to restore your connection fast. No tech skills required!
Tired of Microsoft Teams crashing with "Error M" memory issues? Follow our step-by-step guide to fix Error M in Teams, clear cache, update software, and boost performance—no tech skills required!
Discover the easiest step-by-step guide to setting up Microsoft Teams Town Hall events. Host massive virtual gatherings effortlessly with pro tips for seamless execution. Perfect for leaders and organizers!
Struggling with Microsoft Teams "Download Error" on PC? Discover proven, step-by-step fixes to resolve download failed issues quickly. Get back to seamless collaboration in minutes—no tech skills needed!
Stuck with Microsoft Teams "Error L" License error? Follow this step-by-step troubleshooting guide to resolve licensing issues quickly, restore access, and boost productivity without IT hassle. Updated with latest fixes.