18 lines
305 B
Go
18 lines
305 B
Go
|
func goroutine1() {
|
||
|
m.Lock()
|
||
|
- ch <- request //blocks // HL
|
||
|
+ select { // HL
|
||
|
+ case ch <- request: // HL
|
||
|
+ default: // HL
|
||
|
}
|
||
|
m.Unlock()
|
||
|
}
|
||
|
|
||
|
func goroutine2() {
|
||
|
for {
|
||
|
m.Lock() //blocks
|
||
|
m.Unlock()
|
||
|
request <- ch
|
||
|
}
|
||
|
}
|