33 lines
655 B
Go
33 lines
655 B
Go
// finalizer
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"log"
|
|
"time"
|
|
)
|
|
|
|
func remover(remove chan consumed) {
|
|
var conn = dbs.rdb.Get()
|
|
defer conn.Close()
|
|
|
|
for loop {
|
|
rem := <-remove
|
|
|
|
wg.Add(1)
|
|
defer wg.Done()
|
|
|
|
start := time.Now()
|
|
for i := range rem.logins {
|
|
login := rem.logins[i]
|
|
// cancella da Redis la riga di login inserita
|
|
conn.Send("lrem", rem.user, "0", login)
|
|
}
|
|
conn.Send("expire", rem.user, opts.RedisTTL.Seconds())
|
|
conn.Flush()
|
|
if opts.Debug {
|
|
log.Printf("LREM: %s - %d - %+v\n\r", rem.user, len(rem.logins), time.Since(start))
|
|
fmt.Printf("LREM: %s - %d - %+v\n\r", rem.user, len(rem.logins), time.Since(start))
|
|
}
|
|
}
|
|
}
|