12345678910111213141516171819202122232425262728293031323334353637 |
- package chan_test
- import (
- "fmt"
- "testing"
- )
- func TestClose(t *testing.T) {
- ch := make(chan int)
- close(ch)
- <-ch
- <-ch
- <-ch
- println("ok")
- }
- type Tuple[K comparable, V any] struct {
- K K
- V V
- }
- func TestWalk(t *testing.T) {
- tch := make(chan *Tuple[int, string], 100)
- go func() {
- for n := 1; n < 10000; n++ {
- s := fmt.Sprint("V", n)
- tch <- &Tuple[int, string]{n, s}
- }
- close(tch)
- }()
- for a := range tch {
- println(a.K, a.V)
- }
- }
|