Pull to refresh
2
0
Eduard @Edison

Software Engineer

Send message

Ну это только один пример удобства, хотя только подталкивает все ошибки обрабатывать одинаково.
А вот второй аргумент непонятен, что try! что ? просто возвращают ошибку, разницы никакой.

а расскажите в чем преимущество ? над try!?

стоит заметить, что это было добавлено в 1.15

С checksum файла, поды рестартанут даже после удаления пустой строки, форматирования, etc. Мы у себя использует хэши обьектов (хелм не используем) когда хотим автоматом рестарт.
А патч хорош когда просто нужно сделать рестарт с RollingUpdate.

Окей, у нас в Deployment’е 6 реплик, поэтому мы можем по очереди, вручную сделать всем delete pod.

Вместо ручного удаления подов, лучше просто добавить/изменить аннотацию деплоймента (не все хелм используют), что-то рандомное:


kubectl patch deploy <deployemnt-name> -p \
  "{\"spec\":{\"template\":{\"metadata\":{\"annotations\":{\"date\":\"`date +'%s'`\"}}}}}"

браузер и терминал, все что нужно.

а у меня встал
UPD: я про Линукс на макбук

Указатель, который передается по значению.

Вот только Go нету ссылок, только передача по значению.

2100 только открытых и 31000 закрытых, там и еще пару десятков других репозиторий.
Но в целом это не показатель.

В Go нету ссылок.
Слайс в Go — это структура, где одно из полей это указатель на массив:


type slice struct {
   array unsafe.Pointer
   len   int
   cap   int
}

https://golang.org/src/runtime/slice.go

вы хотели сказать согласно спецификации unordered, или что значит "по дефолту"?
Насколько я помню, в начальной реализации map в Go обход был "упорядоченный" (то есть, разработчики Go просто не парились об этом), но пришлось поменять (добавили fastrand для определния начала), чтобы пользователи не полагались на упорядоченность.

можно еще GC отключить, GOGC=off, должно быть чуть быстрее

Вопроса на самом деле два: насколько легко на языке писать библиотеки, которые мне нравятся, и насколько легко писать библиотеки, которые не нравятся.

Да.
В тех редких случаях, когда надо останавливать потоки/циклы, вы просто заранее предусматриваете для этого отключающий костыль, как в Си++.

Ага, в Go можно принимать context и стопать цикл при отмене.
Только прочитайте еще раз претензию 0xd34df00d, он про другой случай пишет.
Если вам не нравится библиотека, то вы ее не используете, правильно?
В чем вопрос тогда?
Не используйте такой код, сделайте пулл реквест и тд.
Странные у вас претензии — вы явно запускаете в горутине не ваш метод.

Я для этого использую пакет context, например:


func run(ctx context.Context, ...) {
    for {
        select {
        case <-ctx.Done():
           return
        ....
        }
    }
}

Можно просто канал передать и закрыть его, можно закрывать канал с данными и в run делать range по нему.

Вызываемый и вызывающий, которые await синхронизирует
То есть await синхронизирует два метода и выполняются они в одном потоке. Все верно или нет?

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Registered
Activity