教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 go语言之进阶篇 select实现的超时机制

go语言之进阶篇 select实现的超时机制

发布时间:2021-04-29   编辑:jiaochengji.com
教程集为您提供go语言之进阶篇 select实现的超时机制等资源,欢迎您收藏本站,我们将为您提供最新的go语言之进阶篇 select实现的超时机制资源

1、select实现的超时机制

示例:

 

package main

import (
	"fmt"
	"time"
)

func main() {
	ch := make(chan int)
	quit := make(chan bool)

	//新开一个协程
	go func() {
		for {
			select {
			case num := <-ch:
				fmt.Println("num = ", num)
			case <-time.After(3 * time.Second):
				fmt.Println("超时")
				quit <- true
			}
		}

	}() //别忘了()

	for i := 0; i < 5; i   {
		ch <- i
		time.Sleep(time.Second)
	}

	<-quit
	fmt.Println("程序结束")

}

执行结果:

 

num =  0
num =  1
num =  2
num =  3
num =  4
超时
程序结束

  

转载于:https://www.cnblogs.com/nulige/p/10288541.html

到此这篇关于“go语言之进阶篇 select实现的超时机制”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
go语言之进阶篇 select实现的超时机制
想系统学习GO语言(Golang
Go语言学习3----Go语言特色
Go 语言十年而立,Go2 蓄势待发
go语言和python哪个难
go语言并发编程
龙芯平台构建Go语言环境指南
Go 语言进阶教程
想学一门新的编程语言?考虑一下Go (Golang)吧
Golang笔记:语法,并发思想,web开发,Go微服务相关

[关闭]
~ ~