@proGO

Страница 1254 из 1674
Mikhail
25.02.2018
09:37:32
Ребят, сейчас пытаюсь съехать на go с js, не подскажите обучающих ресурсов помимо оф сайта?

Google
Mikhail
25.02.2018
09:39:56
Благодарю ?

Vasily Romanov
25.02.2018
09:52:12
Труба
25.02.2018
11:50:44
всем привет, в го нельзя возвращать массив интерфейсов? func GetPosts() []Saver { return []Post{Post{}} } cannot use []Post literal (type []Post) as type []Saver in return argument

Daniel
25.02.2018
11:51:54
func GetPosts() []Saver { return []Saver{Post{}.(Saver)} }

атоматическая конверсия конкретного типа в интерфейс не распространяется на массивы

Труба
25.02.2018
11:54:16
спасибо

Daniel
25.02.2018
11:55:37
даже вот так: func GetPosts() []Saver { return []Saver{Post{}} }

Труба
25.02.2018
12:00:15
Не работает, предыдущий способ, кстати, тоже =) https://play.golang.org/p/Eyctr6zvGrA

Труба
25.02.2018
12:08:24
господи, мне казалось, что это я уже пробовал =) Оказывается нет, спасибо!

Daniel
25.02.2018
12:15:57
вообще-то, там сообщение об ошибке вполне внятное

Sergey
25.02.2018
12:20:49
Кто использовал github.com/graphql-go/graphql, подскажите как вызвать Resolve у вложеного объекта. query{ groups{ id name modules{ id name } } } Например при запросе вызывается Resolve для group, но не вызывается для modules который объявлен как поле в groups.

Google
Roman
25.02.2018
17:17:42
можно как-то прослушивать один канал из нескольких горутин?

такое ощущение что уже задавал этот вопрос, но не могу вспомнить ответ

Michael
25.02.2018
17:18:14
мона

Roman
25.02.2018
17:18:32
хочу блокировать несколоко рутин в .Wait() пока один канал не зарезолвится, ток не могу понять как

عاصم بن حارث
25.02.2018
17:20:17
хочу блокировать несколоко рутин в .Wait() пока один канал не зарезолвится, ток не могу понять как
Так напиши кусочек который проверяет твою идею/мысль и протестируй.

Roman
25.02.2018
17:20:45
Так напиши кусочек который проверяет твою идею/мысль и протестируй.
так написал уже, проблема в том что не могу я прослушивать канал <-done в нескольких рутинах одновременно

ибо канал как fan работает

а не как hub

Den
25.02.2018
17:21:25
ибо канал как fan работает
в смысле как вентилятор разбрасывает?

Roman
25.02.2018
17:22:06
в смысле как вентилятор разбрасывает?
насколько я понимаю да, если make(chan bool, 2) прослушивают 2 рутины то нужно 4 була пробросить чтоб оба сработали

т.е. канал блокируется mutually exclusive при чтении

Daniel
25.02.2018
17:22:38
а?!

коллега

вы, пожалуйста, решите, чего вы хотите

Roman
25.02.2018
17:23:26
вы, пожалуйста, решите, чего вы хотите
заблокировать несколько рутин, до определённого асинхронного события

Daniel
25.02.2018
17:25:25
один раз, или повторяющимся образом?

есть одно событие, которое все горутины разом получают, слушающие один канал - его закрытие

но переоткрыть канал нельзя, так что это одноразовое мероприятие

Roman
25.02.2018
17:28:50
проблема в том что оба должны в моём случае сработать по done <- true, но так ведь каналы не работают

Google
Nick
25.02.2018
17:29:34
Идёшь в Гугл и ищешь Barrier

Daniel
25.02.2018
17:30:35
и об этом написано в доке

Roman
25.02.2018
17:31:35
если done закрыть - сработает чтение в обеих горутинах
бинго! https://play.golang.org/p/dEjG2ktlFce точно, спасибо!

Dmitri
25.02.2018
19:58:12
Это одно и то же?: *[]User []*User

meehalkoff✪
25.02.2018
19:59:00
BlackTrojan
25.02.2018
19:59:22
meehalkoff✪
25.02.2018
19:59:41
Указатель на слайс юзеров, и слайс указателей на юзера

Dmitri
25.02.2018
20:00:07
Думал что слайс и так по указателю передается

почему-то

Александр
25.02.2018
20:30:31
цените, это достаточно гениально? https://play.golang.org/p/dIc1Tdyjr3T ?

Aleksandr
25.02.2018
20:38:37
На что обратить внимание?

Александр
25.02.2018
20:39:21
в общем ?

я просто придумал вот подход, смотрю насколько гибко получается так работать с сервисами

из недостатоков пока нашел что если несколько запросов на 1 сервис, то придется плодить send

Nikolay
25.02.2018
20:41:06
из недостатоков пока нашел что если несколько запросов на 1 сервис, то придется плодить send
service.Field = "Request value" как минимум не будет работать с много горутин

Aleksandr
25.02.2018
20:41:07
res, err := service.send(req)

Александр
25.02.2018
20:42:08
а в service что?

просто параметры аля url для запроса?

Google
Aleksandr
25.02.2018
20:42:50
Например. Урл, клиент

Александр
25.02.2018
20:43:20
я думал над таким

но ург же будет уникальным для каждого запроса

если мы про удаленный рест апи

Aleksandr
25.02.2018
20:44:23
Ну так и сервис у тебя будет разный

Либо send(uri, req)

Admin
ERROR: S client not available

Александр
25.02.2018
20:44:45
тогда смысл плодить еще и реквест?

когда можно внутрь вложить это все

а не плодить сущности

Aleksandr
25.02.2018
20:45:34
Так ты будешь плодить сервисы они же реквесты

То есть реквест сам себя отправляющий

Пусть будет сервис отправляющий реквесты. Логично звучит?

Nikolay
25.02.2018
20:46:17
Так ты будешь плодить сервисы они же реквесты
рили? разве это не из-за concurrency такой дизайн аля по-классике?

Aleksandr
25.02.2018
20:47:47
По классике стейтлесс сервис, стейтфул реквесты. У него же стейтфул сервис/реквесты.

Александр
25.02.2018
20:49:14
зачем это все?
ну я хотел просто прикинуть как в будущем делать запросы к сервисам ?

вот набросал мою идею огранизации, и решил запостить для критики

По классике стейтлесс сервис, стейтфул реквесты. У него же стейтфул сервис/реквесты.
ну честно, если бы надо было хранить много "общих" переменных то да, а тут то что. Каждый запрос считайте атомарный

у них общего только хост

Google
Александр
25.02.2018
20:52:57
а что клиент?

клиент общий, http c настройкой таймаутов

он вынесет в отдельную функцию, но в бою конечно несколько сложнее

в примере просто эмуляция его через DoHttpRequestWithBody

Aleksandr
25.02.2018
20:53:55
Ну так пусть это будет метод Send()

Зачем реквесты сам себя отправляет - вот в чем вопрос

Александр
25.02.2018
20:54:38
что бы не плодить "пустую" сущность ?

Aleksandr
25.02.2018
20:54:45
Какую?

Александр
25.02.2018
20:55:01
ну в моем случаи, url запроса уникальное, тело уникальное

что можно вынести в клиент?

будет пустая структура

Aleksandr
25.02.2018
20:55:36
Я написал "метод Send()"

Не структура и не клиент

Александр
25.02.2018
20:56:32
вы имеете введу функция может быть? ?

Aleksandr
25.02.2018
20:56:39
Точно, сорри

Александр
25.02.2018
20:56:52
я и думаю

Я написал "метод Send()"
мне тут еще из зала орут, что код не совместим с тестами. В частиности httptest

Страница 1254 из 1674