Илья
логгер аналогично кладу туда
🏁Александр
про замыкание не понял
Кириллл
Всем доброго вечера.
Хочу в проект (винда) подключить goquery, копирую в содержимое папки src содержимое репы goquery, ловлю несколько ошибок о том, что в goquery есть требуются ещё сторонние библиотеки, прописанные в ипорте как github.com/opesun/goquery/exp/html к примеру.
Как действовать?
Кириллл
По данной ссылке вообще 404
Илья
Кириллл
Кириллл
Пэкедж встал, но не хочет работать, в самой программе (взял с примера) ошибка
undefined: goquery.ParseString, может сталкивался кто?
Sergey
import “github.com/opesun/goquery”
Кириллл
🏁Александр
лучше несколько проектов тогда
🏁Александр
иначе новички с ума сойдут
🏁Александр
когда откроют швейцарский нож на 54 элемента
Daniel
это главная проблема обучалок
Daniel
причем любых обучалок
🏁Александр
сигнатуры аля:
func NewBroker(l logging.Logger, host string, port int, clientId string, login string, password string) (Client, error)
🏁Александр
шо то не очень
🏁Александр
еще и logging.Logger с специфическим интерфейсом как правило
Daniel
а какие варианты?
🏁Александр
ну вот собственно и думаю
🏁Александр
отдать error можно конечно
🏁Александр
но тогда все говно с "длинным" логгером уйдет в main
Daniel
можно NewBroker убрать в пакет, добавить пакету функцию SetLogger и использовать там внутри тотальную переменную
Daniel
а можно вообще использовать логгер навроде structlog, и звать его как structlog.DefaultLogger
🏁Александр
он и так в пакете 🙂
🏁Александр
в отдельном пакете
Илья
https://gist.github.com/xigang/29cb33ad37730000ebd31a43b6f86528
🏁Александр
господи
Илья
сигнатуры проще будет, но вызовы не изменятся
🏁Александр
святой php!
Илья
эм, помоему твой пример с di - это присвятой js/php
Kirill
🏁Александр
Илья
кстате, dave.cheney.net сломался, странно
Aleksandr
Kirill
Илья
хм
Kirill
¯\_(ツ)_/¯ Деплой
Илья
печально, что-то с vpn :S ERR_CONNECTION_RESET
🏁Александр
например для подсчета перфоманса
Daniel
да, если есть такие планы - логгер надо пропихивать снаружи
Daniel
и тут вариантов масса
🏁Александр
у меня это скорее не логгре даже
🏁Александр
а какой то event
Daniel
errProcessor?
🏁Александр
генерируются события, даже без текста
🏁Александр
logger.Log(&logging.Broker{
DBInit: &logging.DBInit{
Resource: logging.RESOURCE_BROKER,
Addr: viper.GetString("host")+":"+viper.GetString("port"),
Status: logging.STATUS_CONNECTED,
},
})
🏁Александр
хотя я думаю для такого есть конечно и более специализированные решения
🏁Александр
структуры реализуею интерфейс для рендеринга в логгер всего этого
🏁Александр
с методами типо Text()
🏁Александр
зря я его назвал логгер конечно, но не суть
Vadim
Добрый вечер, я иногда конспектирую информацию и делаю для себя cheatsheet. МБ, кому-нибудь будет полезно. http://telegra.ph/Gorutiny-cheatsheet-07-05
🏁Александр
зачем использовать runtime.Gosched() не понятно
🏁Александр
для этого можно было сделать канал с буффером 1
Vadim
Если у вас в коде есть парочка тяжёлых горутин, которые могут занять все процессы, то я был свидетелем, как в них используют runtime.Gosghed().
Vadim
Даже если сейчас вам эта функция не нужна, о ней всё равно лучше знать, так как она может вам помочь в каких-нибудь специфических ситуациях.
Daniel
Pawel
🏁Александр
OMG
в данном контексте...
🏁Александр
кстати странно что не отдает управление при записи в канал
🏁Александр
https://play.golang.org/p/RLaTw_LfGYB
Denis
https://play.golang.org/p/RLaTw_LfGYB
Если сделать 500 воркеров, то вообще в странном порядке:
ID: 254 I: 0
ID: 254 I: 1
ID: 255 I: 0
... <≈100 строк>
ID: 494 I: 1
ID: 494 I: 2
ID: 0 I: 0
ID: 0 I: 1
ID: 0 I: 2
ID: 0 I: 3
ID: 0 I: 4
ID: 495 I: 0
ID: 495 I: 1
...
🏁Александр
ядра кончились
🏁Александр
хрен его знает
Vadim
Проблема с ядрами
Vadim
ID: 0 I: 0
ID: 0 I: 1
ID: 0 I: 2
ID: 1 I: 0
ID: 3 I: 0
ID: 4 I: 0
ID: 2 I: 0
ID: 0 I: 3
ID: 1 I: 1
ID: 3 I: 1
ID: 4 I: 1
ID: 2 I: 1
ID: 0 I: 4
ID: 1 I: 2
ID: 3 I: 2
ID: 4 I: 2
ID: 2 I: 2
ID: 1 I: 3
ID: 3 I: 3
ID: 4 I: 3
ID: 2 I: 3
ID: 1 I: 4
ID: 3 I: 4
ID: 4 I: 4
ID: 2 I: 4
Vadim
Вот как на 8 виртуальных процессах.
Vadim
Боюсь, вы ответили себе на вопрос.
Alexey
Полгода юзаем, вроде все ок. Правда пришлось форкнуть и допилить то, что было нужно нам.
Dmitry
https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%B4%D1%83%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D0%B5_%D1%83%D0%BC%D0%BE%D0%B7%D0%B0%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5
Vadim
Vadim
Неполная индукция может привести к проблеме черного лебедя
Stepan
var ch [l]chan
ch[0] = make(chan string, 100)