G
go-concurrency-patterns
Opanuj współbieżność w Go: goroutines, kanały i synchronizacja dla aplikacji produkcyjnych
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Skill do nauki i implementacji wzorców współbieżności w Go. Dowiedz się, jak pracować z goroutines, kanałami, primitywnymi synchronizacji oraz context management. Idealny do budowania aplikacji współbieżnych, implementacji worker pools, zarządzania cyklem życia goroutines i debugowania race conditions. Zawiera gotowe przykłady kodu dla graceful shutdown i komunikacji między goroutines.
Jak używać
- Zainstaluj skill w swoim środowisku agenta, dodając go-concurrency-patterns do listy dostępnych umiejętności.
- Zapoznaj się z podstawowymi primitywnymi Go: goroutines do lekkiego wykonania równoległego, kanały do komunikacji między goroutines, sync.Mutex do wzajemnego wykluczenia i sync.WaitGroup do czekania na zakończenie goroutines.
- Użyj context.Context do zarządzania anulowaniem i timeoutami — zawsze przekazuj kontekst do funkcji worker, aby umożliwić graceful shutdown.
- Implementuj worker pool, tworząc pętlę, która uruchamia N goroutines, każdy czytający z kanału zadań i wysyłający wyniki na kanał wyjściowy.
- Debuguj race conditions uruchamiając aplikację z flagą -race, aby detector wychwycił niezabezpieczone dostępy do pamięci między goroutines.
- Testuj swoje wzorce na małych przykładach (jak pokazany kod z 3 workerami i timeoutem), zanim skalujesz do produkcji.