Size: a a a

Golang Developers — русскоговорящее сообщество

2020 August 29

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Анатолий
А что у тебя находится в []byte?
url
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Тогда тебе наверно нужно перевести в string просто
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
string(yourVar) что выдаст?
источник

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Анатолий
string(yourVar) что выдаст?
cannot convert [][]byte to string
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Denis Shkabatur
cannot convert [][]byte to string
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Я не заметил первую пару скобок в сообщении, сорян
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Да, только циклом пройтись
источник

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Анатолий
Я не заметил первую пару скобок в сообщении, сорян
видимо в цикле для каждого слайса байтов делать new String()
источник

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Кто знает что это за варнинг? При этом всё парсится и работает как надо.
источник

x

x-foby in Golang Developers — русскоговорящее сообщество
Denis Shkabatur
Кто знает что это за варнинг? При этом всё парсится и работает как надо.
`json: "some"` -> `json:"some"`
источник

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
x-foby
`json: "some"` -> `json:"some"`
спасибо, попробую)
источник

x

x-foby in Golang Developers — русскоговорящее сообщество
Denis Shkabatur
это и в одном цикле можно сделать, я думал мб есть что то в одну строчку.
Если это академический интерес, то можно одной строчкой перевести [][]byte в []string, если в исходном слайсе один элемент.

Но, конечно же, такого ода не должно быть в боевых проектах.
Во-первых, он бесполезен, во-вторых, — не безопасен.

Пример: https://play.golang.org/p/vZ68li0lj1j
источник

x

x-foby in Golang Developers — русскоговорящее сообщество
Если вы хотите сконвертировать одной сточкой ради читаемости, то просто вынесите конвертацию в отдельную функцию, и вызывайте её одной строчкой)
источник
2020 August 30

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Такая ситуация: я создаю канал с размером, равным количеству пишущих в него горутин. Для каждой горутины вызываю wg.Add(1), в каждой горутине вначале defer wg.Done(). Жду пока все это закончит выполнятся а потом в цикле вытаскиваю значения из канала. По какой-то причине программа виснет, видимо пытаясь получить очередное значение из канала, когда туда уже никто не пишет. Как это пофиксить можно ?)
источник

СГ

Сергей Гришаев... in Golang Developers — русскоговорящее сообщество
Denis Shkabatur
Такая ситуация: я создаю канал с размером, равным количеству пишущих в него горутин. Для каждой горутины вызываю wg.Add(1), в каждой горутине вначале defer wg.Done(). Жду пока все это закончит выполнятся а потом в цикле вытаскиваю значения из канала. По какой-то причине программа виснет, видимо пытаясь получить очередное значение из канала, когда туда уже никто не пишет. Как это пофиксить можно ?)
Хотелось бы увидеть чуть больше кода.
p.s. Если вы заранее знаете количество горутин, то проще будет  сделать перед циклом так:
wg.Add(len(mainNode.Nodes)), чем вызывать метод Add() некоторое количество раз
источник

AS

Alexander Shavelev in Golang Developers — русскоговорящее сообщество
Denis Shkabatur
Такая ситуация: я создаю канал с размером, равным количеству пишущих в него горутин. Для каждой горутины вызываю wg.Add(1), в каждой горутине вначале defer wg.Done(). Жду пока все это закончит выполнятся а потом в цикле вытаскиваю значения из канала. По какой-то причине программа виснет, видимо пытаясь получить очередное значение из канала, когда туда уже никто не пишет. Как это пофиксить можно ?)
а канал с кто-то закрывает?
вы ж в рейнже будете по нему вечно читать
источник

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Сергей Гришаев
Хотелось бы увидеть чуть больше кода.
p.s. Если вы заранее знаете количество горутин, то проще будет  сделать перед циклом так:
wg.Add(len(mainNode.Nodes)), чем вызывать метод Add() некоторое количество раз
я по разному пробовал в целях обучения)
источник

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Сергей Гришаев
Хотелось бы увидеть чуть больше кода.
p.s. Если вы заранее знаете количество горутин, то проще будет  сделать перед циклом так:
wg.Add(len(mainNode.Nodes)), чем вызывать метод Add() некоторое количество раз
источник

DS

Denis Shkabatur in Golang Developers — русскоговорящее сообщество
Alexander Shavelev
а канал с кто-то закрывает?
вы ж в рейнже будете по нему вечно читать
Видимо в этом и проблема. Но я не понимаю как это идиоматично сделать. 74 горутины конкурентно работают, кто должен закрыть канал ?)
источник

AS

Alexander Shavelev in Golang Developers — русскоговорящее сообщество
Denis Shkabatur
Видимо в этом и проблема. Но я не понимаю как это идиоматично сделать. 74 горутины конкурентно работают, кто должен закрыть канал ?)
ну в случае вашего кода - просто добавьте в рейнже брейк если i == len(Nodes)

и потом закрытие канала шоб не было ликов
источник