`

go select

    博客分类:
  • go
 
阅读更多
select 是 Go 中的一个控制结构,类似于用于通信的 switch 语句。每个 case 必须是一个通信操作,要么是发送要么是接收。

select 随机执行一个可运行的 case。如果没有 case 可运行,它将阻塞,直到有 case 可运行

package main

import "fmt"

func main() {
	ch1 := make(chan int, 2)
	ch2 := make(chan string, 2)
	ch3 := make(chan int, 3)
	ch1 <- 1
	ch3 <- 1
	//每次执行的值都可能不一样
	select {
	case i := <-ch1:
		fmt.Println(i)
	case ch2 <- "a":
		fmt.Println("input to chan 2")
	case <-ch3:
		fmt.Println("read data from chan3")
	}
}

分享到:
评论

相关推荐

    Golang中switch语句和select语句的用法教程

    本文主要给大家介绍了...因此,Go语言的switch语句又分为表达式switch语句和类型switch语句。 1、表达式switch语句 var name string ... switch name { case Golang: fmt.Println(Golang) case Rust: fmt.Println

    SQL sever 实训

    --单元九 语言编程基础 --计算有多少种产品(假设为x),然后显示一条信息:共有X种产品 DECLARE @X int SET @X =(SELECT COUNT (*) FROM Product ) PRINT '共有'+convert (char(2),@x)+'种产品。' GO --编写...

    子查询是指一条SELECT语句作为另一条SELECT语句的一部分,外层的SELCT语句称为外部查询,内层的SELECT语句称为内部查询(或子查询)

    子查询是SQL语言中一种重要的查询方式,它允许将一条SELECT语句作为另一条SELECT语句的一部分使用。这种结构化的设计使得数据库查询更为灵活和强大。具体而言,外层的SELECT语句被称为外部查询,而内层的SELECT语句...

    goselect:Go中的select(2)实现

    Go中的select(2)实现 支持平台 386 amd64 手臂 臂64 ps 小偷 mips64 mips64le ppc64le s390x linux 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 达尔文 是的 是的 ?? ?? 不适用 不适用 不适用 ...

    go代码-go select特性

    在Go语言中,`select`语句是一个强大的同步原语,它允许goroutine等待多个通信操作,例如channel的发送或接收。本篇文章将深入探讨`go select`特性,以及如何在实际编程中有效地利用它。 一、`select`概述 `select`...

    学习 Go 语言(Golang)

    Go 语言,也被称为 Golang,是由 Google 的 Robert Griesemer、Rob Pike 和 Ken Thompson 在 2007 年设计的一种静态类型的编程语言。它旨在提供高效的开发体验,同时保持简洁的语法和内置的并发支持。Go 语言在...

    详解golang开发中select多路选择

    select 是 Golang 中的一个控制结构,语法上类似于switch 语句,只不过select是用于 goroutine 间通信的 ,每个 case 必须是一个通信操作,要么是发送要么是接收,select 会随机执行一个可运行的 case。如果没有 ...

    简介Go语言中的select语句的用法

    在Go编程语言中的select语句的语法如下: 代码如下: select {  case communication clause :  statement(s);   case communication clause :  statement(s);  /* you can have any number of case ...

    选课系统select course

    每一年的毕业生都需要进行毕业设计,课题的选择是一个必须的环节,以前的出题老师都是通过手写板书、打印文件等方式给学生们提供相关的课题供学生选择,如果指导老师的学生比较多时,这样就容易造成选题混乱流程不...

    Go语言企业级数据处理项目实战案例 Golang实现企业级数据可视化 Go语言项目案例课程

    ├─(1) 1-1 Go语言数据详解.mp4 ├─(2) 10-1 数据存储(上).mp4 ├─(3) 10-2 数据存储(下).mp4个 ├─(4) 11-1 基于Ant Design的数据可视化.mp4 ├─(5) 12-1 企业级解决方案的关注点.mp4 ├─(6) 12-2 课程知识...

    Go语言中Select语句用法实例

    本文实例讲述了Go语言中Select语句用法。分享给大家供大家参考。具体分析如下: select 语句使得一个 goroutine 在多个通讯操作上等待。 select 会阻塞,直到条件分支中的某个可以继续执行,这时就会执行那个条件...

    SQL Server SELECT

    ### SQL Server SELECT 语句详解 #### 一、SELECT 语句概述 SQL Server 的 `SELECT` 语句是用于从数据库中检索数据的核心工具。它允许用户指定想要查询的数据,以及如何处理这些数据,例如排序、筛选或聚合等。 ##...

    golang基础教程-go语言快速入门.zip

    Go语言,又称Golang,是Google在2009年推出的一种开源编程语言,由罗伯特·格瑞史莫、罗布·派克和肯特·贝克等大神设计。Go语言的设计目标是简单、高效、安全,特别适合构建网络服务和并发程序。它吸收了C语言的...

    go语言编程,Go语言程序设计(英文版),学习 Go 语言(Golang),golang-china读书笔记

    Go语言,也被称为Golang,是由Google开发的一种静态类型的、编译式的、并发型且具有垃圾回收功能的编程语言。自2009年发布以来,Go语言因其简洁的语法、高效的性能以及对并发编程的良好支持,受到了广大开发者的欢迎...

    select into和insert into select使用方法

    ### 使用Select Into与Insert Into Select进行表复制的方法 在数据库管理与操作中,`SELECT INTO`与`INSERT INTO SELECT FROM`是两种常见的用于复制或创建新表的方式。这两种语句虽然相似,但在实际使用场景中有着...

    谷歌 GO 语言 教程 PDF

    谷歌的Go语言,也被称为Golang,是由Google在2009年推出的一种开源编程语言。它被设计为简洁、高效、并发性好,并且具有内置的垃圾回收机制,使得开发人员可以更专注于编写可维护的代码。这个“谷歌GO语言教程PDF”...

    Go语言基础、进阶、提高课程第七节Go语言 条件语句1

    在Go语言中,我们有多种条件判断语句可供选择,以实现灵活的逻辑控制。让我们深入探讨Go语言中的这些条件语句。 1. **if 语句** Go语言的`if`语句包含一个布尔表达式,如果该表达式的值为`true`,则执行紧跟其后的...

Global site tag (gtag.js) - Google Analytics