()
| 543 | } |
| 544 | |
| 545 | func (w *Worker) loop() { |
| 546 | defer w.Stop() |
| 547 | for { |
| 548 | select { |
| 549 | case <-w.quit: |
| 550 | return |
| 551 | case event, ok := <-w.consumer.Watch(): |
| 552 | if !ok { |
| 553 | slog.InfoContext(w.ctx, "consumer channel closed") |
| 554 | return |
| 555 | } |
| 556 | w.handleEvent(event) |
| 557 | case <-w.ctx.Done(): |
| 558 | slog.DebugContext(w.ctx, "context done") |
| 559 | return |
| 560 | } |
| 561 | } |
| 562 | } |
| 563 | |
| 564 | func (w *Worker) rateLimitLoop() { |
| 565 | defer w.Stop() |
no test coverage detected