相关疑难解决方法(0)

如何阻止goroutine

我有一个调用方法的goroutine,并在通道上传递返回值:

ch := make(chan int, 100)
go func(){
    for {
        ch <- do_stuff()
    }
}()
Run Code Online (Sandbox Code Playgroud)

我怎么停止这样的goroutine?

go goroutine channels

90
推荐指数
6
解决办法
9万
查看次数

如何在Go中管理几个命令?

如何在Go中将多个外部命令一起管道?我试过这段代码,但是我收到一条错误exit status 1.

package main

import (
    "io"
    "log"
    "os"
    "os/exec"
)

func main() {
    c1 := exec.Command("ls")
    stdout1, err := c1.StdoutPipe()
    if err != nil {
        log.Fatal(err)
    }

    if err = c1.Start(); err != nil {
        log.Fatal(err)
    }
    if err = c1.Wait(); err != nil {
        log.Fatal(err)
    }

    c2 := exec.Command("wc", "-l")
    c2.Stdin = stdout1

    stdout2, err := c2.StdoutPipe()
    if err != nil {
        log.Fatal(err)
    }

    if err = c2.Start(); err != nil {
        log.Fatal(err)
    }
    if …
Run Code Online (Sandbox Code Playgroud)

pipe go

61
推荐指数
5
解决办法
3万
查看次数

标签 统计

go ×2

channels ×1

goroutine ×1

pipe ×1