zhangzengfei
2022-10-18 c3ed6822b959e78bae3673b86b9b990ae92e1cc5
store_test.go
@@ -1,7 +1,6 @@
package boltcache
import (
   "strconv"
   "testing"
   "time"
)
@@ -16,23 +15,41 @@
   defer ls.Close()
   go consume(ls)
   //go consume(ls)
   //
   //for i := 0; i < 10; i++ {
   //   ls.ApplyLog([]byte("hello world " + strconv.Itoa(i)))
   //   time.Sleep(time.Millisecond * 100)
   //}
   for i:=0; i<10000; i++{
      ls.ApplyLog([]byte("hello world "+strconv.Itoa(i)))
      time.Sleep(time.Second * 1)
   ls.printLog("Size = ", ls.Size())
   var logs []*LogCon
   ls.ForEach(func(log *LogCon) error {
      ls.printLog("val=:", string(log.GetData()))
      logs = append(logs, log)
      time.Sleep(time.Millisecond * 100)
      return nil
   })
   for _, log := range logs {
      ls.Delete(log)
   }
   //consume(ls)
}
func consume(ls *LogStore) {
   for {
      lc := ls.Get()
      if lc != nil {
         ls.printLog(lc.conf.BucketName," send old log:", string(lc.Log.Data))
         ls.printLog(lc.conf.BucketName, " send old log:", string(lc.Log.Data))
         ls.Delete(lc)
      } else {
         return
      }
      time.Sleep(10 * time.Second)
      time.Sleep(10 * time.Millisecond)
   }
}
}