Исходники и презентации

This commit is contained in:
2025-05-23 07:26:39 +03:00
parent aa948179d5
commit 02d8430a3a
514 changed files with 13773 additions and 0 deletions

View File

@ -0,0 +1,51 @@
package main
import (
"fmt"
"sync"
)
func producer(ch chan int) {
defer close(ch)
for i := 0; i < 5; i++ {
ch <- i
}
}
func consumer(ch chan int) {
/*
for {
select {
case value, opened := <-ch:
if !opened {
return
}
fmt.Println(value)
}
}
*/
for value := range ch { // syntax sugar
fmt.Println(value)
}
}
func main() {
ch := make(chan int)
wg := sync.WaitGroup{}
wg.Add(2)
go func() {
defer wg.Done()
producer(ch)
}()
go func() {
defer wg.Done()
consumer(ch)
}()
wg.Wait()
}