当前位置:网站首页>golang chan
golang chan
2022-08-04 05:34:00 【_杜竞宁_】
chan:go routine 间消息通道
package main
import (
"log"
"time"
)
type APIHandler struct {
RestartChan chan bool
}
var API = &APIHandler{
RestartChan: make(chan bool),
}
var Debug bool = true
func main(){
log.SetPrefix("[chan] ")
log.Println("start...")
if Debug {
log.SetFlags(log.Lshortfile | log.LstdFlags)
}
go func() {
for range API.RestartChan {
API.Print()
}
}()
for {
API.RestartChan <- true
time.Sleep(1*time.Second)
}
}
func (api *APIHandler) Print(){
log.Println("chan in")
}
result:
[[email protected] chann]# go run chann.go
[chan] 2022/06/15 09:26:57 start...
[chan] 2022/06/15 09:26:57 chann.go:40: chan in
[chan] 2022/06/15 09:26:58 chann.go:40: chan in
[chan] 2022/06/15 09:26:59 chann.go:40: chan in
边栏推荐
猜你喜欢
随机推荐
C语言结构体(必须掌握版)
线性表之动态数组(ArrayList)的自实现
用chrome dev tools 强制js注入
LeetCode刷题
Socket编程详解
注册表设置默认浏览器 win7,winserver 2008,winserver 2012
【HIT-SC-LAB1】哈工大2022软件构造 实验1
冰歇webshell初探
枚举和联合(自定义类型)-C语言
网络安全工程师们改不掉的“老毛病”
并发概念基础:线程,死锁
JUC锁框架——初识AQS
【HIT-SC-MEMO7】哈工大2022软件构造 复习笔记7
读取JDBC配置文件
给想要转行渗透测试人的忠告
第九篇 ApplicationContext初始化
实现高并发服务器(二)
IDEA中创建web项目实现步骤
vs2017 redist 下载地址
键盘扫描码