memorizza il totale dello storage su variabile locale

This commit is contained in:
Michele 2017-03-30 16:27:03 +02:00
parent e1b13718bf
commit 73cfd49a17
6 changed files with 62 additions and 15 deletions

View file

@ -13,13 +13,15 @@ type Counterchan struct {
// Counter structure
type Counter struct {
mu sync.Mutex
user int
insert int
err int
dup int
time time.Duration
wg int
mu sync.Mutex
user int
insert int
err int
dup int
time time.Duration
wg int
msg int
storage int
}
// NewCounter iniitialized Counter structure
@ -53,11 +55,25 @@ func (c *Counter) Run() {
}
case "err":
c.addErr(tocount.val)
case "msg":
c.addMsg(tocount.val)
case "storage":
c.addStorage(tocount.val)
}
}
}
// AddStorage
func (c *Counter) addStorage(add int) {
c.storage += add
}
// AddMsg
func (c *Counter) addMsg(add int) {
c.msg += add
}
// AddUser increment number of users managed
func (c *Counter) addUser() {
c.user++
@ -88,6 +104,22 @@ func (c *Counter) delWG() {
c.wg--
}
// GetStorage
func (c *Counter) GetStorage() (ret int) {
c.mu.Lock()
defer c.mu.Unlock()
ret = c.storage
return
}
// GetMsg
func (c *Counter) GetMsg() (ret int) {
c.mu.Lock()
defer c.mu.Unlock()
ret = c.msg
return
}
// GetUser return total users
func (c *Counter) GetUser() (ret int) {
c.mu.Lock()