Goroutines und Channels
Teil des Go-Kurses
Dein Programm soll zwanzig Dateien herunterladen. Ganz gewöhnlich geschrieben, lädt es die erste, wartet, lädt die zweite, wartet, und so weiter. Fast die ganze Zeit tut es überhaupt nichts, sondern wartet nur auf ein Netzwerk, das millionenfach langsamer ist als dein Prozessor. Die Arbeit wäre zwanzigmal schneller fertig, wenn sich das Warten überlappen würde.
Mehreres gleichzeitig zu tun ist das älteste schwere Problem der Programmierung, und die meisten Sprachen machen es einem wirklich schwer. Go wurde darum herum entworfen, und in dieser Lektion zeigt sich das. Du bekommst zwei Ideen. Eine Goroutine ist ein Stück deines Programms, das neben dem Rest läuft.
Möchtest du Go Goroutines und Channels in einer echten Umgebung lernen?
Klick unten, hol dir eine Linux-Maschine mit fertigem Go und arbeite Goroutines und Channels praktisch durch, mit einem KI-Tutor, der deinen Code kennt.
Lektion startenGoroutines und ChannelsWas du lernen wirst
- The go keyword
- Goroutine lifetime
- Unbuffered channels
- Buffered channels
- Send and receive
- Range over channel
- Close a channel
