用Golang的goroutines和通道进行并行图像处理

79 阅读1分钟

在这个例子中,我们要用goroutines并发地处理多张图片。这个过程包括按顺序上传、裁剪和保存。我们使用通道来告诉下一个步骤的开始。一旦图片处理的所有步骤完成,我们就关闭所有的通道。一旦所有的图像处理完毕,应用程序就存在了。由于这是一个并发的操作,你永远无法保证哪张图片会先被处理。顺便说一下,我们实际上不会上传、裁剪和保存图像

例子

main.go

package main

upload.go

我们随机睡觉以模拟一些处理时间。

package image

测试

正如你在下面看到的,赢家是image3!

START
Total time