()
| 24 | var IPListUpdateNotify = make(chan bool, 1) |
| 25 | |
| 26 | func init() { |
| 27 | if !teaconst.IsMain { |
| 28 | return |
| 29 | } |
| 30 | |
| 31 | events.On(events.EventLoaded, func() { |
| 32 | goman.New(func() { |
| 33 | SharedIPListManager.Start() |
| 34 | }) |
| 35 | }) |
| 36 | events.OnClose(func() { |
| 37 | SharedIPListManager.Stop() |
| 38 | }) |
| 39 | |
| 40 | var ticker = time.NewTicker(24 * time.Hour) |
| 41 | goman.New(func() { |
| 42 | idles.RunTicker(ticker, func() { |
| 43 | SharedIPListManager.DeleteExpiredItems() |
| 44 | }) |
| 45 | }) |
| 46 | } |
| 47 | |
| 48 | // IPListManager IP名单管理 |
| 49 | type IPListManager struct { |