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
Lies diese Lektion in deiner Sprache
Alle Lektionen in diesem Kurs
20 Lektionen- 1Hallo, Go25 Min.
- 2Variablen und Typen25 Min.
- 3Kontrollfluss: if und for30 Min.
- 4Funktionen30 Min.
- 5Slices und Maps35 Min.
- 6Structs und Pointers35 Min.
- 7Methods und Interfaces35 Min.
- 8Fehlerbehandlung35 Min.
- 9Modules und Projektstruktur35 Min.
- 10Kleines CLI-Abschlussprojekt40 Min.
- 11Eine Tour durch die Standardbibliothek40 Min.
- 12Tests und Benchmarks40 Min.
- 13Goroutines und Channels40 Min.
- 14Nebenläufigkeitsmuster45 Min.
- 15Generics35 Min.
- 16HTTP-Server45 Min.
- 17Datenbanken mit database/sql45 Min.
- 18Leistung und Profiling40 Min.
- 19Entwurfsmuster in Go40 Min.
- 20Deployment und Produktion45 Min.
