登录
首页 >  Golang >  Go问答

多线程 Go 程序

来源:stackoverflow

时间:2024-04-05 13:00:35 238浏览 收藏

珍惜时间,勤奋学习!今天给大家带来《多线程 Go 程序》,正文内容主要涉及到等等,如果你正在学习Golang,或者是对Golang有疑问,欢迎大家关注我!后面我会持续更新相关内容的,希望都能帮到正在学习的大家!

问题内容

我有一个简单的程序,可以生成随机字符串和数字,并将其以特定格式表示:

输出: a=skek673kjk b=67235 c=pdcne39jswl

我有 4 个功能,包括主要功能:

func genRandInt() string {
  //return string(randInt)
}

func genRandStr() string {
  //return (randStr)
}

func genFakeData() string {
  fmt.Println("A=" + genRanStr() + genRandInt().....etc)
}

func main() {
  genFackeData()
}

到目前为止,程序运行良好,我正在通过 bash 循环执行它,以便多次运行它,以便在服务器上生成巨大的流量,但我无法按照预期获取生成的数据,什么我需要在许多工作人员(例如 50 个工作人员)中运行 genfackedata() 我如何在 go 中实现这一目标?

(顺便说一句,这是我的程序的非常简单的版本,不使 复杂我已经写了我需要的简单示例)


解决方案


如果我理解你的愿望,那么尝试在这里玩https://play.golang.org/p/q_r8PATh6_U

package main

import (
    "fmt"
    "sync"
)

func genFakeData(wg *sync.WaitGroup, i int) {
  fmt.Println("A =",i + 1)
  wg.Done()
}

func main() {
   var wg sync.WaitGroup
   for i:=0 ; i<50 ; i++ {
    wg.Add(1)
    go genFakeData(&wg, i)
   }
   wg.Wait()
}

理论要掌握,实操不能落!以上关于《多线程 Go 程序》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>