refactoring: select on b.ctx.Done()
Select on b.ctx.Done() where there is no need to access b.bs afterwards.
Vladimir Bauer
1 year, 10 months ago
| 94 | 94 | select { |
| 95 | 95 | case b.operateState <- func(s *bState) { result <- len(s.ewmaDecorators) != 0 }: |
| 96 | 96 | return newProxyReader(r, b, <-result) |
| 97 | case <-b.done: | |
| 97 | case <-b.ctx.Done(): | |
| 98 | 98 | return nil |
| 99 | 99 | } |
| 100 | 100 | } |
| 110 | 110 | select { |
| 111 | 111 | case b.operateState <- func(s *bState) { result <- len(s.ewmaDecorators) != 0 }: |
| 112 | 112 | return newProxyWriter(w, b, <-result) |
| 113 | case <-b.done: | |
| 113 | case <-b.ctx.Done(): | |
| 114 | 114 | return nil |
| 115 | 115 | } |
| 116 | 116 | } |
| 150 | 150 | s.refill = s.current |
| 151 | 151 | } |
| 152 | 152 | }: |
| 153 | case <-b.done: | |
| 153 | case <-b.ctx.Done(): | |
| 154 | 154 | } |
| 155 | 155 | } |
| 156 | 156 | |
| 169 | 169 | for d := range iter { |
| 170 | 170 | cb(unwrap(d)) |
| 171 | 171 | } |
| 172 | case <-b.done: | |
| 172 | case <-b.ctx.Done(): | |
| 173 | 173 | } |
| 174 | 174 | } |
| 175 | 175 | |
| 190 | 190 | s.triggerComplete = true |
| 191 | 191 | } |
| 192 | 192 | }: |
| 193 | case <-b.done: | |
| 193 | case <-b.ctx.Done(): | |
| 194 | 194 | } |
| 195 | 195 | } |
| 196 | 196 | |
| 216 | 216 | b.triggerCompletion(s) |
| 217 | 217 | } |
| 218 | 218 | }: |
| 219 | case <-b.done: | |
| 219 | case <-b.ctx.Done(): | |
| 220 | 220 | } |
| 221 | 221 | } |
| 222 | 222 | |
| 234 | 234 | b.triggerCompletion(s) |
| 235 | 235 | } |
| 236 | 236 | }: |
| 237 | case <-b.done: | |
| 237 | case <-b.ctx.Done(): | |
| 238 | 238 | } |
| 239 | 239 | } |
| 240 | 240 | |
| 254 | 254 | b.triggerCompletion(s) |
| 255 | 255 | } |
| 256 | 256 | }: |
| 257 | case <-b.done: | |
| 257 | case <-b.ctx.Done(): | |
| 258 | 258 | } |
| 259 | 259 | } |
| 260 | 260 | |
| 279 | 279 | b.triggerCompletion(s) |
| 280 | 280 | } |
| 281 | 281 | }: |
| 282 | case <-b.done: | |
| 282 | case <-b.ctx.Done(): | |
| 283 | 283 | } |
| 284 | 284 | } |
| 285 | 285 | |
| 306 | 306 | b.triggerCompletion(s) |
| 307 | 307 | } |
| 308 | 308 | }: |
| 309 | case <-b.done: | |
| 309 | case <-b.ctx.Done(): | |
| 310 | 310 | } |
| 311 | 311 | } |
| 312 | 312 | |
| 316 | 316 | func (b *Bar) DecoratorAverageAdjust(start time.Time) { |
| 317 | 317 | select { |
| 318 | 318 | case b.operateState <- func(s *bState) { s.decoratorAverageAdjust(start) }: |
| 319 | case <-b.done: | |
| 319 | case <-b.ctx.Done(): | |
| 320 | 320 | } |
| 321 | 321 | } |
| 322 | 322 | |
| 341 | 341 | s.rmOnComplete = drop |
| 342 | 342 | b.triggerCompletion(s) |
| 343 | 343 | }: |
| 344 | case <-b.done: | |
| 344 | case <-b.ctx.Done(): | |
| 345 | 345 | } |
| 346 | 346 | } |
| 347 | 347 | |
| 379 | 379 | |
| 380 | 380 | // Wait blocks until bar is completed or aborted. |
| 381 | 381 | func (b *Bar) Wait() { |
| 382 | <-b.done | |
| 382 | <-b.ctx.Done() | |
| 383 | 383 | } |
| 384 | 384 | |
| 385 | 385 | func (b *Bar) serve(bs *bState) { |