@proGO

Страница 830 из 1674
Alex
04.09.2017
13:35:54
Недетерминированое поведение же, или я ошибаюсь?

Alexey
04.09.2017
13:36:00
аа, я думал там - про адресацию памяти надо расказывать

Nikolay
04.09.2017
13:36:18
Alex
04.09.2017
13:36:34
Google
Alexey
04.09.2017
13:36:35
Недетерминированое поведение же, или я ошибаюсь?
Там потом все такие (ну, много таких)

Nikolay
04.09.2017
13:36:55
Почему?
попытка записи в неаллоцированный канал

Alex
04.09.2017
13:37:10
Nikolay
04.09.2017
13:37:10
или попытка чтения, тут уж что успеет

Alex
04.09.2017
13:37:15
Не заметил

Alexey
04.09.2017
13:38:17
Alex
04.09.2017
13:38:17
ну в 6 там на неекспортируемых полях словить пытаются

В седьмом вроде бы всё окей, кроме goroutine leak'а

Потому что никто не закрыл канал

Nikolay
04.09.2017
13:39:46
в седьмом рейс кондишон

точнее, успеет написать cmd1, но не успеет cmd2, имхо

Alex
04.09.2017
13:40:26
Возможно, ну лик там в любом случае

даже если успеет

Google
Nikolay
04.09.2017
13:40:30
ну да

Alex
04.09.2017
13:41:08
В 8-ом три раза "three" выведет

Alexey
04.09.2017
13:41:09
Ну 8 хоть неопределено?)

Alex
04.09.2017
13:41:16
Это уже размусоленно много раз было

Alexey
04.09.2017
13:42:01
А, потому что v одно и то же..

Nikolay
04.09.2017
13:42:17
я по питону похожие вопросы задаю на собеседованиях :)

вынос переменных из области определения

Alex
04.09.2017
13:42:27
В 9-ом или 0, или 9999

Что быстрее выполнится

nezorflame
04.09.2017
13:43:18
в 9 у меня на маке 50 на 50 считает

в половине случаев успевает до 10к добежать

Alexey
04.09.2017
13:43:28
Вру, я не туда смотрю)

nezorflame
04.09.2017
13:43:34
в половине нет и там будет рандом

Alex
04.09.2017
13:43:55
Окей, тогда здесь не тот случай, что в рендже

Буду знать :)

nezorflame
04.09.2017
13:44:05
так что поведение не определено

Alex
04.09.2017
13:44:26
Ну может быть и 0, если мейн быстрее всех закончится

Nikolay
04.09.2017
13:45:42
ну все-таки есть разница между неопределенным поведением и рейс кондишоном

неопределенное - это в плюсах, где при произвольном доступе к памяти вообще что угодно может произойти

Alex
04.09.2017
13:46:15
Ну неопределенное поведение в этом случае изза рейс кондишена

Google
Nikolay
04.09.2017
13:46:23
а тут всего лишь гонка

имхо, гонка - не неопределенное поведение

но могу ошибаться

Alex
04.09.2017
13:46:45
Ну окей, не будем термины мешать

Это все можно по-разному понимать

ясно, что это не то же самое, что UB в C++

Nikolay
04.09.2017
13:47:33
тут вроде сегфолты тоже бывают

Alex
04.09.2017
13:48:03
в 10 тоже рейс кондишен или что-то ещё есть?

Nikolay
04.09.2017
13:51:32
надо было потроллить и назвать 9-й 10-м, а потом спросить в 11-м, о чем был девятый вопрос

раз уж такая пьянка

в десятом, как я понимаю, передача по значению, не?

Alex
04.09.2017
13:52:26
map - reference type

Nikolay
04.09.2017
13:52:37
а, ок тогда

Alex
04.09.2017
13:52:51
map, chan, slice

все референсы

nezorflame
04.09.2017
13:54:25
в 10 будет паника

concurrent map writes

Alex
04.09.2017
13:54:29
Меня смутило ещё использование fmt для конвертации инта в стринг, но это не ошибка

concurrent map writes
Ага, спасибо

Google
Alex
04.09.2017
13:55:09
На плейграунде попробовал, всё ок было. Что ещё раз подтверждает мои слова про его детерминированость.

Alexey
04.09.2017
14:02:54
На плейграунде попробовал, всё ок было. Что ещё раз подтверждает мои слова про его детерминированость.
Там на самом деле нет никакого плейграунда, там с другой стороны сидят индусы, которые быстро вбивают в редактор, компилируют и копируют обратно.

Andrey
04.09.2017
14:18:05
скомпилил прогу, скинул на сервер запускаю, пишет программа не найдена, что я делаю не так? запускаю просто написанием имени скрипта находясь в том же каталоге

права 777 поставил

Alex
04.09.2017
14:19:31
./name

Andrey
04.09.2017
14:19:54
точно спасибо :)

Alexey
04.09.2017
14:24:56
ыыы, основы линукса - нужны обязательно.

Sonniy
04.09.2017
14:26:11
Почти в любой сфере программирования

От него не убежишь

Alexey
04.09.2017
14:27:56
в c# не нужно

Sonniy
04.09.2017
14:29:45
Пф

. Net core

nezorflame
04.09.2017
14:40:32
уже нужно)

Kirill
04.09.2017
15:05:39


Nikolay
04.09.2017
15:08:47
и каков пик-то при полной нагрузке?, если безлимитно жрет - то не норм, где то утечка видимо

Kirill
04.09.2017
15:10:26
Если дергать хендлдер (долбить по урлу любому), то доходит до зарезервированных в начале TotalAlloc, дальше gc и по новой

и каков пик-то при полной нагрузке?, если безлимитно жрет - то не норм, где то утечка видимо
я и пытаюсь утечку найти, дошел до простейшей имплементации, все выкинул, ну как все.. пишу в файл, держу один хендлер куда печатаю runtime.MemStats..

https://pastebin.com/2LFT6TGQ выкинул все что можно. Может отлаживаюсь криво write.Flush() неправильно использую?

Google
Kirill
04.09.2017
15:26:26
Так я и спрашиваю) т.е то что ListenAndServe отжирает в пустую Alloc это норма?)

Sparrow
04.09.2017
15:27:50
норма конечно. потому, что когда ты ресурсы закрываешь, они только становятся мусором, он сам не уберется

Kirill
04.09.2017
15:31:29
норма конечно. потому, что когда ты ресурсы закрываешь, они только становятся мусором, он сам не уберется
Оке, просто немного странно, листнер поднимается, но дальше я тестирую без http запросов, т.е память кто-то аллоцирует дополнительно? Т.е это исключительно обекты рантайма и райтер в файл?

Sparrow
04.09.2017
15:34:42
посмотри в код, что листенер делает

Kirill
04.09.2017
15:36:03
посмотри в код, что листенер делает
Посмотрю. Просто я уже голову всю сломал, реально то ли лыжи не едут то ли второе

Dmitri
04.09.2017
16:05:29
:)
и мне опросник можно?

nezorflame
04.09.2017
16:05:43
я скидывал выше уже в чатик

Александр
04.09.2017
16:16:05
а как бы с помощью рефлексии рекурсивно пройтись по структуре, найти там поля под названием ID (в том числе и во вложенных структурах), и получить все их значения значение?

Sparrow
04.09.2017
16:24:02
В stdlib имеете ввиду?
ага. я не знаю, как он работает. может там пул какой-то создаётся

Oleg
04.09.2017
16:36:45
dbCfg := make(map[string]database.Config) подскажите неофиту что это

Daniel
04.09.2017
16:37:02
а что непонятно?

Oleg
04.09.2017
16:37:13
type Config struct { Addr string `yaml:"addr"` Database string `yaml:"database"` User string `yaml:"user"` Password string `yaml:"password"` TimeoutMs int `yaml:"timeoutms"` ReadTimeoutMs int `yaml:"readtimeoutms"` WriteTimeoutMs int `yaml:"writetimeoutms"` ParseTime bool `yaml:"parsetime"` Timezone string `yaml:"timezone"` MaxIdleConn int `yaml:"maxidleconn"` // maximum idle connections in the pool MaxOpenConn int `yaml:"maxopenconn"` // maximum pool size MaxConnTTL int `yaml:"maxconnttl"` // maximum amount of time a connection may be reused. Calculating since moment connection is opened Charset string `yaml:"charset"` }

Вроде как мы делаем map через из структуры, верно ?

Ну или ассоциативный массив

Но почему тип map[string]

В общем не совсем понятно что мы получим после операции данной

Nikolay
04.09.2017
16:41:40
В общем не совсем понятно что мы получим после операции данной
После этой операции инициализируется карта с ключами типа string, и значениями типа database.Config Мысленно представить себе потенциальное содержимое можно так: map[string]db.Config { "conf1": config1, "conf3": config3, "conf5": config5, .... }

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