go 每隔一秒 从channel 里面拉取一下数据 要怎么实现

go 每隔一秒 从channel 里面拉取一下数据 要怎么实现

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 5

计划任务,每秒执行一次 GO 脚本

3年前 评论
tick := time.Tick(1 * time.Second)
for _ = range tick {
    // 读取通道? 
}
3年前 评论
package main

import "fmt"
import "time"

func reveiveChan(c1 chan<- string) {
    c1 <- "hello world"
}


func main() {
    c1 := make(chan string)
    go reveiveChan(c1)



    for true {
        time.Sleep(time.Second*1)
        data :=<-c1
        fmt.Println(data)
    }
}
3年前 评论
playmaker
package main

import "fmt"

import "time"

func timer(d time.Duration) <-chan int {
   c := make(chan int)
   go func() {
      time.Sleep(d)
      c <- 1
    }()
    return c
 }

func main() {
    for i := 0; i < 24; i++ {
       c := timer(1 * time.Second)
       val := <-c
       fmt.Println(val)
     }
 }
3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!