Size: a a a

2021 June 22

FD

Faster Dampeer in Go-go!
ну в нее я передал данные с первой горутины. а cond для прослушки.
источник

AE

Alexey Ermakov in Go-go!
так в одной горутине залочил, а вторая ждет?
источник

FD

Faster Dampeer in Go-go!
источник

AE

Alexey Ermakov in Go-go!
а, не, не ждёт, вроде )
источник

RL

Ragnar Lodbrok in Go-go!
У вас создаётся для каждого числа новая горутина
источник

S

Sergey in Go-go!
Интересный if

if i % 2 ==0 {
 even <- i
 fmt.Println("четные числа", <-even)
 close(even)
}
источник

FD

Faster Dampeer in Go-go!
ааа, Ща перепишу. Спасибо )
источник

S

Sergey in Go-go!
Ты лочишься на even <- i и всё

У тебя небуф канал, значит после записи первого значения текущая рутина залочится, пока что-то не прочитает оттуда значение.

Напиши так, смысл не изменится:

if i % 2 == 0 {
   fmt.Println("четные числа", i)
}

Плюс вот тут
go func(i int) {
 defer wg.Done()
 wg.Add(1)
 cond.L.Lock()
 wg.Wait()

Ты добавляешь через wg.Add(1), лочишь мьютекс и сразу лочишь ещё и WaitGroup, в итоге у тебя еще и тут рутина виснет.
источник

AB

Andrey Burov in Go-go!
источник

FD

Faster Dampeer in Go-go!
Ага. Спасибо огромное )
источник

S

Sergey in Go-go!
Не, ну готовый ответ не интересно давать
источник

FD

Faster Dampeer in Go-go!
Все бы хорошо, ток мне надо именно через горутины это реализовать, чтобы понять как они работают )
источник

AE

Alexey Ermakov in Go-go!
там нужна горутина с селектом из even/odd и fmt.Println, наверное)
источник

S

Sergey in Go-go!
оно и так будет реализовано через рутины, только будут убраны ненужные sync элементы, которые всё ломают
источник

FD

Faster Dampeer in Go-go!
ну да, тип с прослушкой. Прослушку как-нибудь сам реализую. Главное хотябы заработало.
источник

AE

Alexey Ermakov in Go-go!
источник

AE

Alexey Ermakov in Go-go!
тоже учусь, так что может быть неправильно)
источник

FD

Faster Dampeer in Go-go!
Спасибо огромное. Я чёт не подумал что так можно. Все пытался условие а case запихнуть
источник

LV

Legio V Alaudae in Go-go!
источник

AE

Alexey Ermakov in Go-go!
там wg.done надо в условие запихать, а то даже если число не то пришло - всё равно считается, что горутина отработала на него
источник