程序要关闭了,通知各个goroutine安全退出

package main

import (
    "fmt"
    "time"
)

func task1(exitChan chan int) {
    <-exitChan
    fmt.Println("task1 exiting")
}

func task2(exitChan chan int) {
    <-exitChan
    fmt.Println("task2 exiting")
}

func main() {
    exitChan := make(chan int)
    go task1(exitChan)
    go task2(exitChan)
    time.Sleep(2 * time.Second)
    close(exitChan)
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在平时使用app的时候你会发现,有的应用要连续点击多次Back键,才能退出程序;按Home键只是把程序挂起,并没有...
    Hsicen阅读 180评论 0 0
  • 第七十八章 危在旦夕 原来明月在混乱之中看到了蛟牛腹部的鳞片较少,推断可能是它的弱点,被他歪打正着。 而剑明的火云...
    遗忘的水滴阅读 903评论 7 28
  • 从去年参与区块链的投资到现在差不多一年了,在这一年当中自己花了比较多的时间和精力投入到区块链当中,不仅仅是学习与项...
    chinawzck阅读 211评论 1 2
  • 人总是会在安静闲坐内心无波无澜时才表现出应有的理智,所以说文字这种安静状态孵化出来的东西最能体现出一个人理智状...
    82788bc7faad阅读 229评论 0 0
  • 时间如流水般流逝,距离对自己的100天承诺,已经过去了一个月的时间。这一个月,我养成不少微习惯,自身状态通过阅...
    kitty的幸福生活阅读 167评论 0 1