()
| 19 | } |
| 20 | |
| 21 | func NewTimerManager() *TimerManager { |
| 22 | |
| 23 | m := &TimerManager{ |
| 24 | seqIDIndex: 0, |
| 25 | pool: newTimerPool(), |
| 26 | } |
| 27 | |
| 28 | now := UnixTS() |
| 29 | |
| 30 | timer_wheels := &m.timer_wheels |
| 31 | |
| 32 | timer_wheels[0] = newTimerWheel(1, 0, now, m.pool) |
| 33 | timer_wheels[1] = newTimerWheel(0xff+1, 8, now, m.pool) |
| 34 | timer_wheels[2] = newTimerWheel(0xffff+1, 16, now, m.pool) |
| 35 | timer_wheels[3] = newTimerWheel(0xffffff+1, 24, now, m.pool) |
| 36 | timer_wheels[4] = newTimerWheel(0xffffffff+1, 32, now, m.pool) |
| 37 | |
| 38 | timer_wheels[0].next_wheel = timer_wheels[1] |
| 39 | timer_wheels[1].prev_wheel = timer_wheels[0] |
| 40 | timer_wheels[1].next_wheel = timer_wheels[2] |
| 41 | timer_wheels[2].prev_wheel = timer_wheels[1] |
| 42 | timer_wheels[2].next_wheel = timer_wheels[3] |
| 43 | timer_wheels[3].prev_wheel = timer_wheels[2] |
| 44 | timer_wheels[3].next_wheel = timer_wheels[4] |
| 45 | timer_wheels[4].prev_wheel = timer_wheels[3] |
| 46 | |
| 47 | return m |
| 48 | } |
| 49 | |
| 50 | func (this *TimerManager) GetSeqID() uint32 { |
| 51 | this.seqIDIndex++ |
nothing calls this directly
no test coverage detected
searching dependent graphs…