228
// newMatcherData creates a new matcherData. onRateLimited is called each time a dispatch
229
// is blocked by the rate limiter (whole-queue or per-key).
230
>
func newMatcherData(config *taskQueueConfig, logger log.Logger, timeSource clock.TimeSource, canForward bool, rateLimitManager *rateLimitManager, onRateLimited func()) matcherData {
matcher_data.go
231
>
return matcherData{
232
>
config: config,
233
>
logger: logger,
234
>
timeSource: timeSource,
235
>
canForward: canForward,
236
>
rateLimitManager: rateLimitManager,
237
>
onRateLimited: onRateLimited,
238
>
tasks: newTaskBTree(),
239
>
}
240
>
}
241
242
func (d *matcherData) Stop() {