
Roman
16.06.2018
18:27:56

Alexander
16.06.2018
18:28:49
А для остального го как бы и не годен.

Roman
16.06.2018
18:29:09

Google

Roman
16.06.2018
18:29:23

Alexander
16.06.2018
18:30:55
холивар тригер детектед
Меня самого чувак затригерил своим вопросом про обсервбл. У го есть своя (узкая) ниша и реактивное программирование в нее не вписывается.
хм?
Го работает с асинхронным (неблокирующим) IO. При этом когда горутина делает IO вызов го скедулер укладывает её спать.
Чтобы это все работало под капотом нужен евентлуп.

Roman
16.06.2018
18:37:14
да ладно.. просто попробуйте))

Demuz
16.06.2018
18:40:05
да ладно.. просто попробуйте))
Ххех. Может и попробую. Повешу ивент листенеры на переменную, которую нужно мониторить и при обновлении этой переменной, пусть везде высвечивается она автоматически обновленная. Оххх, жесть. Наверное это все таки для рендеринга подходит, чем для консоли. Но отображение в консоли и есть своего рода рендеринг.

Roman
16.06.2018
18:42:28

Demuz
16.06.2018
18:43:54
?

Roman
16.06.2018
18:44:38

Kirill
16.06.2018
19:03:43
Народ, у меня объявление:
Каждый месяц я буду разыгрывать по от $50 до $100 за:
- самую популярную статью об https://github.com/gramework/gramework на таких платформах, как medium, habr.com, digitalocean (если вы хотите опубликовать статью на другой платформе вам нужно написать мне, чтобы я сначала проверил, можно ли автоматически проверить всё нужное для нахождения самой популярной статьи). Автор самой популярной статьи месяца получит деньги. ВНИМАНИЕ: статьи, которые просто копируют примеры из ридми проекта и не дают новых знаний о grarmework читателям, не участвуют в акции.
- самого активного контрибьютора. Я добавлю специальные баллы в названия тикетов и контрибьютор, собравший наибольшее количество баллов (при этом не меньше 4), получит деньги. Вы можете создавать новые тикеты с вашими пожеланиями, я буду ставить баллы на них. Я сам не участвую в этом рейтинге и не считаю свои же баллы.

Panda
16.06.2018
19:05:45
не зря говорят что гитхаб это инстаграмм

Kirill
16.06.2018
19:10:50

Google

Dmitri
16.06.2018
19:21:47
Нет, чувак серьезен

[Anonymous]
16.06.2018
19:35:50
Хай всем

Roman
16.06.2018
19:36:02

Kaspar
16.06.2018
19:47:27

Daniel
16.06.2018
19:48:00

1nt3rrupt3r
16.06.2018
19:49:44
в го работа с массивами goroutine-safe?)

Vasily Romanov
16.06.2018
19:50:06
нет

1nt3rrupt3r
16.06.2018
19:50:28
ых

Vasily Romanov
16.06.2018
19:50:30
любое изменение - не goroutine-safe

1nt3rrupt3r
16.06.2018
19:51:01

Vasily Romanov
16.06.2018
19:51:28
с числами тоже рейсы возможны

1nt3rrupt3r
16.06.2018
19:51:30
лан, спасибо всё равно

Vasily Romanov
16.06.2018
19:51:34
если вы изменяете данные
если только читаете - то никаких проблем нету

Alexandr
16.06.2018
19:51:46
@rvasily привет, это не ты случайно роликах про обучение го снимался? )

Vasily Romanov
16.06.2018
19:51:53

Daniel
16.06.2018
19:51:55
Goroutine-safe только каналы, atomic

Alexandr
16.06.2018
19:52:17
да, я
респект, ролики агонь!

Daniel
16.06.2018
19:52:35
Уже об sync.Mutex можно споткнуться

Pawel
16.06.2018
19:53:51

Google

1nt3rrupt3r
16.06.2018
19:54:17
Goroutine-safe только каналы, atomic
я писал свой thread-pool и мне надо было асинхронно добавить в очередь много задач, а потом ждать, пока все задачи выполнятся, как мне добавлять задачи, если каналы блокируют?

Vasily Romanov
16.06.2018
19:54:51
буферизированные каналы?

Daniel
16.06.2018
19:54:55
Буферизованные каналы

1nt3rrupt3r
16.06.2018
19:58:50

Vasily Romanov
16.06.2018
19:59:06
не могут

1nt3rrupt3r
16.06.2018
19:59:11
точнее расширяться
а я не могу заранее знать количество задач

Vasily Romanov
16.06.2018
19:59:32
они вообще не могут расширяться, это не слайс
нет проблемы держать канал большого с большим буфером
особенно если вы туда передаёте указатель на структуру, например
так, канал на 10к указателей будет в памяти примерно 80 кб занимать

1nt3rrupt3r
16.06.2018
20:01:42
а если я буду добавлять задачи в другой горутине - пул может запуститься и отключиться раньше добавления какой-либо задачи

Vasily Romanov
16.06.2018
20:01:46
конечно у вас может прилететь и миллион, но тут уже думать - может внешнее хранилище
если вы запустите пул, то он скорее всего будет читать из канала
и пока вы канал не закроете - он заблокируется на чтении, ожидая пока задами появятся

1nt3rrupt3r
16.06.2018
20:02:45
пул запускается и отключается асинхронно

Vasily Romanov
16.06.2018
20:03:08
зачем?

1nt3rrupt3r
16.06.2018
20:03:20
лучше просто сделать его синхронным?

Vasily Romanov
16.06.2018
20:03:35
что значит "сделать синхронно"?

Google

1nt3rrupt3r
16.06.2018
20:04:04
ожидать выполнения всех задач после запуска

Vasily Romanov
16.06.2018
20:04:09
запускаете пул и он работает, нет задач - ждёт

1nt3rrupt3r
16.06.2018
20:04:22
и останавливать в горутине добавления задач
наверное я просто говнокодер

Vasily Romanov
16.06.2018
20:04:47
можно пошаманить чтобы на одном пуле выполнялись разные группы задач

Vadim
16.06.2018
20:04:56
Привет, у меня protoc перестал добавлять // Server API for service и // Client API for service

Vasily Romanov
16.06.2018
20:04:57
и дожидаться вы будете именно своей группы

Admin
ERROR: S client not available

Vadim
16.06.2018
20:05:24

Vasily Romanov
16.06.2018
20:05:32

Vadim
16.06.2018
20:05:42
Сейчас код генерируется просто без них. Я хз что делать

1nt3rrupt3r
16.06.2018
20:06:04
лан, спасибо за помощь

Vasily Romanov
16.06.2018
20:06:21
лан, спасибо за помощь
можете мой курс на курсере посомтреть, я там про горутины несколько часов расказывал, и как раз примеры с воркер пулом были

Roman
16.06.2018
20:07:53

Vadim
16.06.2018
20:08:53

Vasily Romanov
16.06.2018
20:09:00

Vadim
16.06.2018
20:09:14
да
Блин, спасибо огромное. Сейчас час тупо смотрел на код, не понимал что происходит

Vasily Romanov
16.06.2018
20:10:09

Google

1nt3rrupt3r
16.06.2018
20:10:13

Vasily Romanov
16.06.2018
20:10:59
а, да, ещё генерация структур тоже дял всех языков

Roman
16.06.2018
20:11:09

Vasily Romanov
16.06.2018
20:11:21
в итоге вы меньше времени уделяете именно протоколу, а больше именно вашей бизнес-логике

Roman
16.06.2018
20:12:36
це-ж вроде как Thrift? т.е. есть IDL?

Vasily Romanov
16.06.2018
20:14:44
да
но Thrift от фейсбука, гуглу не комильфо было его использовать :)

Pawel
16.06.2018
20:18:42

Vasily Romanov
16.06.2018
20:19:04
он не безопаснее
просто оптимальнее для чтения

Roman
16.06.2018
20:20:10

Pawel
16.06.2018
20:20:57
я текст выше не так понял, сорян

Kaspar
16.06.2018
20:22:13

Alexey
16.06.2018
20:59:27

Roman
16.06.2018
21:01:18
я бы конечно про контракт рассказал * gql кхм *.. но не буду)

Daniel
16.06.2018
22:19:23

Dmitri
17.06.2018
04:58:56

Alexander
17.06.2018
05:39:46