Kirill
если, конечно, не оптимизировать цикл 🤔
Kirill
можно же и так
for i > 100 {
i /= 100
count += 2
}
for i != 0 {
i /= 10
count++
}
Daniel
можно еще switch попробовать
Kirill
таки да
Kirill
но выйдет не сильно быстрее, думаю
Kirill
даже не думаю - только что проверил
Daniel
я тоже думаю, что одинаково это все будет
Kirill
51.7 vs 51.3ns
Aleksey
Вы ещё в обоих вариантах второе число нулём сделайте
Aleksey
А два нуля вообще никак
Cat
бисекцией и золотым сечением уже пробовали?
Aleksey
И начинающееся с нулей
Aleksey
Зачем эта конкатенация понадобилась?
Władimir (Zae)
Добрый день, ковыряю http, пытаюсь сделать так, чтобы на все руты кроме /api/reboot, /api/config отдавалась статика, никак не выходит. В чем может быть проблема?
https://play.golang.org/p/fyRBZS8EYog
Илья
а что не выходит?
Władimir (Zae)
на /settings например если я сделаю рут, заходит нормально, но при обновлении браузера он редиректит на /settings/ и выдает not found
Kirill
Władimir (Zae)
на / заходит нормально
Kirill
вот смотрю я на NATS streaming server, @onokonem
Kirill
и вот вдумайся
Kirill
при огромном количестве разных мьютексов
Kirill
отписка делает delete() без мьютекса
Kirill
что при одновременной отписке даст тебе очень неприятную ситуацию
Daniel
чет ты глубоковато копнул :)
Daniel
может быть - надо им багрепорт оформить?
Alexandr
Кто мноо работает с не структурированным json? помогите реализовать поиск по json, есть json произвольной структуры и есть массив с ключами в иерархической последовательности, как вытащить данные из json по этой последовательности?
{"data":{"status":"","data2":{"key1":"asd", "key2":"ASDFDSA"}}}
и есть ключи data-> data2 как вытащить?
Kirill
чет ты глубоковато копнул :)
куда глубоковато? коллега, это первый файл, который я в проекте открыл. это я еще не рассказывал о > 3 уровнях .Lock() в рамках одной функции, код которой обернут временами в RLock()
Alexander
Władimir (Zae)
Kirill
Kirill
Alexander
Kirill
а выше я о проекте на гошке говорил
Alexander
ну это да, тоже внушает.
Kirill
и это nats
Kirill
проект не маленький
Илья
Alexandr
Антон
Всем привет. Есть ли какие нибудь сервисы (платные или бесплатные) обучения по го в стиле: обучение + экзамен? Нужно для корпоративного обучения людей
arkady
Aleksey
@rvasily нужно спросить про курсы :)
Vasily
Антон
Fastumkruk
Привет Ребята. Может крашиться программа из за переполнения буфера? А именно используеться два буфера по 512000 байт.
Fastumkruk
Крашиться раз от раза.
Alexey
Смотря что ты называешь переполнением буфера
Kirill
Ну ты призвал вангу
Kirill
Смотря на стектрейс при падении
Constantine️
сисколы виноваты, не иначе
Fastumkruk
Constantine️
меня игнорируй, это я с Кириллом поздоровался))))
Kirill
И тебе привет 🤣
Kirill
Только я так и не понял, пока ты не сказал, что ты так здороваешься))
Fastumkruk
Kirill
Fastumkruk
Понял
Kirill
Не знаю, правильно ли понял, поясню: информации крайне недостаточно для того, чтобы помочь
Fastumkruk
auth := []byte("{\"request\": \"" + key + "\"}")
ws.Write(auth)
var msg = make([]byte, 512000) // По факту приходил ответ не болие 100 байт
{
nr, err = ws.Read(msg)
}
Fastumkruk
Может ли из за переполнения крашиться? Потому что все 512000 байт были дописанны NULL
Alexey
Что значит «крашится»?
Kirill
По идее, в такой ситуации должен быть стек трейс
Fastumkruk
Kirill
Который в гошке достаточно понятен
Kirill
Посмотри трейс
Alexey
И что в err?
Alexey
И что в результате ws.Write?
Kirill
Это слайс
Kirill
Это ж не массив
Alexey
Без проверки ошибки я бы так не говорил
Kirill
Это слайс
Не должен он из-за этого падать
Kirill
А вот игнорировать ошибки не надо уж точно
Fastumkruk
Dmitry
а как мне негативный предпросмотр (?<!...) зафигачить в регекспе на го?
Daniel
использовать нештатные регекспы
Daniel
в штатных предпросмотра нет
Dmitry
Dmitry
программисты мы али пользователи библиотечек !