Size: a a a

2020 December 12

ЕО

Евгений Омельченко... in Go-go!
Он именно это и делает

// Reset stops a ticker and resets its period to the specified duration.
источник

ЕО

Евгений Омельченко... in Go-go!
Sergey
ну этож надо документацию или исходники читать.. :)
Я думал, что у пользователей IDE можно по кнопке сбоку от кода сразу доку открыть, нет?
источник

A

Artyom in Go-go!
А как тестировать, правильно ли мультиплексер вызывает HandleFunc-и? То есть я сейчас ковыряюсь с httptest, пытаюсь понять, как его использовать.

Ну я вот понимаю, как тестировать сами хендлеры — с помощью ResponseRecorder, впихивать его в HandleFunc, которую надо проверить, а затем читать, что вернулось.

Но как проверить, что HandleFunc-и вызываются именно тогда, когда нужно? То есть на /foo/ одно, на /bar другое, напиример. Хочется, чтобы в тестах было явно показано, где какой хендлер должен вызываться.
источник

S

Sergey in Go-go!
а зачем это тестировать? не доверяешь роутеру?
источник

A

Artyom in Go-go!
хах, понял
источник

A

Artyom in Go-go!
Да было один раз, что из-за слеша бага появилась. Я не думал, что оно там играет роль.
источник

S

Sergey in Go-go!
ну тут достаточно теста, который проверяет ответ. если у тебя несколько хэндлеров возвращают одинаковые данные - то это повод для рефакторинга API.
источник

с

сонная википедия... in Go-go!
Алексей Долгов
меняю на лету тикер. получаю race condition
func (wp *WorkerPool) SetGCTicker(ticker *time.Ticker) {
 wp.Lock()
 wp.gcTicker.Stop()
 wp.gcTicker = ticker
 wp.Unlock()
}


в другом мес
те 
 go func() {
   for range wp.gcTicker.C {

   }
 }()


Так и должно быть? и что делать?
вот так как то стремно делать
for {
     wp.Lock()
     <-wp.gcTicker.C
     
     wp.Unlock()
   }
используйте таймер, а не тикер
источник

A

Artyom in Go-go!
Sergey
ну тут достаточно теста, который проверяет ответ. если у тебя несколько хэндлеров возвращают одинаковые данные - то это повод для рефакторинга API.
логично
источник

ЕА

Егор Андреевич... in Go-go!
Евгений Омельченко
Он именно это и делает

// Reset stops a ticker and resets its period to the specified duration.
о, видать это в 1.15 появилось только, спасибо, до 1.15 вообще нет этого метода
источник

DZ

Dmitry Zherebko in Go-go!
https://github.com/kyleconroy/sqlc#getting-started
ребят, а кто использовал эту либу. Как там делаются разные фильтры которые могут быть или не быть в запросе?
источник

Z

Zver in Go-go!
Dmitry Zherebko
https://github.com/kyleconroy/sqlc#getting-started
ребят, а кто использовал эту либу. Как там делаются разные фильтры которые могут быть или не быть в запросе?
Пишутся разные запросы?
источник

Z

Zver in Go-go!
И под каждый генерится юзкейс.
источник

с

сонная википедия... in Go-go!
Евгений Омельченко
Он именно это и делает

// Reset stops a ticker and resets its period to the specified duration.
изменять время ресета(вроде того что следующий тик через 10 секунд, а этот был через 5) можно только в таймере, а не в тикере
источник

с

сонная википедия... in Go-go!
Reset() в тикере сбрасывается на установленный изначально
источник

ЕО

Евгений Омельченко... in Go-go!
сонная википедия
изменять время ресета(вроде того что следующий тик через 10 секунд, а этот был через 5) можно только в таймере, а не в тикере
А открыть линк религия ЛОРа запрещает?
источник

ЕО

Евгений Омельченко... in Go-go!
источник

Z

Zver in Go-go!
Ислам. Только в Коране на все ответы.
источник

с

сонная википедия... in Go-go!
Евгений Омельченко
А открыть линк религия ЛОРа запрещает?
да
источник

с

сонная википедия... in Go-go!
непонятно как оно работает, если тикер не останавливается и зачем оно вообще нужно, если есть таймер
источник