go-concurrency-patterns
Lerne produktive Go-Nebenläufigkeitsmuster
Nebenläufiger Go-Code ist schwer zu entwerfen und zu debuggen. Diese Fähigkeit bietet bewährte Muster, Beispiele und Best Practices, die du schnell anpassen kannst.
Die Skill-ZIP herunterladen
In Claude hochladen
Gehe zu Einstellungen → Fähigkeiten → Skills → Skill hochladen
Einschalten und loslegen
Teste es
Verwendung von "go-concurrency-patterns". Suggest a pattern for processing many jobs with cancellation.
Erwartetes Ergebnis:
- Verwende einen Worker-Pool mit einem gepufferten Job-Channel
- Übergebe einen Context um Worker bei Abbruch zu stoppen
- Schließe den Results-Channel nachdem alle Worker fertig sind
- Füge Errgroup hinzu wenn du frühes Scheitern bei Fehlern brauchst
Verwendung von "go-concurrency-patterns". How do I run multiple functions in parallel and wait for all?
Erwartetes Ergebnis:
- Verwende sync.WaitGroup um auf Goroutinen zu warten
- Füge jede Goroutine mit wg.Add(1) vor dem Start hinzu
- Rufe wg.Done() in jeder Goroutine per defer auf
- Blockiere mit wg.Wait() nach dem Starten aller Goroutinen
Verwendung von "go-concurrency-patterns". What happens if I close a channel from the receiver side?
Erwartetes Ergebnis:
- Es verursacht einen Panic
- Schließe Channels nur von der Sender-Seite
- Oder verwende eine separate Goroutine zum Schließen
- Prüfe ob der Channel offen ist bevor du sendest
Sicherheitsaudit
SicherAll 58 static findings are FALSE POSITIVES. The scanner matched substrings without semantic context: 'C2' from 'close()', 'weak crypto' from 'WaitGroup', 'dynamic import' from Go import statements, 'backtick execution' from markdown code formatting, and 'path traversal' from code comments. This is a pure documentation skill containing only markdown and JSON files with Go code examples. No executable code, no network calls beyond documentation links, no filesystem access beyond its own files.
Risikofaktoren
🌐 Netzwerkzugriff (1)
⚡ Enthält Skripte (1)
⚙️ Externe Befehle (1)
Qualitätsbewertung
Was du bauen kannst
Nebenläufige Services entwerfen
Wähle Worker-, Pipeline- und Abbruchmuster für produktive Services.
Graceful Shutdowns planen
Füge sicheres Shutdown und Timeout-Handling zu langlebigen Prozessen hinzu.
Grundlagen der Nebenläufigkeit verstehen
Lerne Goroutinen, Channels und Synchronisation mit klaren Beispielen.
Probiere diese Prompts
Erkläre Goroutinen und Channels mit einem kleinen Beispiel für Anfänger.
Gib ein Worker-Pool-Muster in Go mit Context-Abbruch, Job-Channel und Results-Channel.
Zeige ein Graceful-Shutdown-Muster mit Context und OS-Signalen, mit kurzer Erklärung.
Vergleiche Semaphor- und Errgroup-Limit-Muster und empfehle eines für API-Fetch-Aufgaben.
Bewährte Verfahren
- Verwende Context für Abbruch und Deadlines in allen nebenläufigen Operationen
- Schließe Channels nur von der Sender-Seite um Panics zu vermeiden
- Stelle sicher dass Goroutinen einen klaren Ausstiegspfad haben und ctx.Done regelmäßig prüfen
Vermeiden
- time.Sleep für Synchronisation statt proper Primitives verwenden
- Channels von der Empfänger-Seite schließen was Panics verursacht
- ctx.Done in langlebigen Schleifen ignorieren was zu Goroutine-Leaks führt