初级会员
  • 第 70427 位会员
  • gzLin
  • 2021-11-10 04:15:58
  • Offline
  • 20 38

最近分享的资源

    暂无

最近发布的项目

    暂无

最近的评论

  • 初学者。感谢您提供的工作池的教程。确实是学到了! 但是初看您的教程简直可以用一脸懵逼来形容我自己。只有自己在打完代码执行后才能完全理解您的意思。我发现,如果将函数的书写顺序改变一下,应该可以更好地帮助其他初学者的理解其中的含义。 以下是我的拙见: 1. 写 do job 的工具函数 ``` // 完成工作的工具 func digits(number int) int ``` 2. 写 job 的派发函数 ``` // 发布 noOfJobs 个工作,等待工人接收工作 func allocate(noOfJobs int) ``` 3. 写 一个工人去接收 job 并完成的函数 ``` // 一个工人去接收工作,接收到工作之后就要完成工作 // 完成工作之后,将原本的工作内容及其结果写入到 results 信道中 func worker(wg *sync.WaitGroup) { ``` 4. 写 接收 job 完成结果的函数 ``` // 接收任务的结果 func result(done chan bool) ``` 5. 写 创建工作池的函数 ``` // 创建工作池 // 创建 noOfWorkers 个工人来接收任务 // 工人越多,完成任务就越快。没毛病吧 func createWorkerPool(noOfWorkers int) ```