GO最引人注目的功能之一是能够创建葫芦,这是可以同时播放的“光线”。在本文中,我们将探讨如何在GO和一些概念中创建一个Goroutine。
Goroutine概念
与传统线程不同,葫芦是在线程操作系统(OS)中执行的,但是语言会处理任务的作业和调度,从而使母亲goroutines可以执行竞争。这使得竞赛效率更高且未知。主要与其他语言进行比较。goroutine是一个函数,可以在GO程序中同时执行。
它们在资源方面很轻,使您可以创建数千甚至百万美元的资源。崇高是比赛中比赛的基础,并提供了一种有效的语言竞争方式。
我认为无需说竞争与并行性不同。毕竟,我们已经有很多关于它的上下文,甚至Robe Rob Pike也对Concurrency is not parallelism进行了讨论。
因此,从前提开始,您就知道这种差异,让我们专注于这本迷你文章。
创建goruntine
在GO中,Gorratine的创建非常简单。只需将关键字的功能前缀一个函数即可表示它将作为goroutine执行。例如:
package main
import (
"fmt"
"time"
)
func minhaGoroutine() {
fmt.Println("Minha goroutine está em execução!")
time.Sleep(time.Second)
fmt.Println("Minha goroutine está concluída!")
}
func main() {
go minhaGoroutine()
fmt.Println("Função main está em execução!")
time.Sleep(2 * time.Second)
}
在此示例中,函数 myGootine()被执行为goroutine。它打印一条消息,等待一秒钟,然后打印另一个消息。函数 main()将 mygoroutine()称为Gourthine,并继续执行其余代码。为了确保Goroutine有足够的时间运行,我们使用 time.sleep()暂停执行() 函数。
Rob Pike是GO的创造者之一,他强调了Gourthines在其演讲中的重要性“ convurncy是不是招呼主义”(竞争不是平行性)。他指出,葫芦提供了一个简单有效的编程计划来应对竞争。他指出,“竞争是结构计划的一种形式,不仅是一种平行的形式”,并强调了古廷的如何促进竞争任务的组成。
在Go中创建Gooutines可以有效,优雅的竞争对手编程。借助罗布·派克(Rob Pike)和其他语言创作者的灵感,朱态(Gourthines)成为Go.
哲学的基本组成部分。入口...享受GO参赛的力量,并探索Gooutines提供的可能性创建强大而高效的程序的可能性。永远记住,与母亲goroutines 。
时,请考虑安全性和同步ata©下一步! p>