stats.go 575 B

1234567891011121314151617181920212223242526272829303132
  1. package stats
  2. import "sync/atomic"
  3. var (
  4. requestsInProgress int64
  5. imagesInProgress int64
  6. )
  7. func RequestsInProgress() float64 {
  8. return float64(atomic.LoadInt64(&requestsInProgress))
  9. }
  10. func IncRequestsInProgress() {
  11. atomic.AddInt64(&requestsInProgress, 1)
  12. }
  13. func DecRequestsInProgress() {
  14. atomic.AddInt64(&requestsInProgress, -1)
  15. }
  16. func ImagesInProgress() float64 {
  17. return float64(atomic.LoadInt64(&imagesInProgress))
  18. }
  19. func IncImagesInProgress() {
  20. atomic.AddInt64(&imagesInProgress, 1)
  21. }
  22. func DecImagesInProgress() {
  23. atomic.AddInt64(&imagesInProgress, -1)
  24. }