#tunm_timer

简易定时器

```rust extern crate tunmtimer; use tunmtimer::{Factory, Timer, RetTimer, Handler};

struct TimeHandle;

impl tunmtimer::Factory for TimeHandle { fn ontrigger(&mut self, timer: &mut Timer, id: u64) -> RetTimer { println!("ontigger = {:}", id); RetTimer::Ok } }

struct RepeatTimeHandle { times: u32, } impl tunmtimer::Factory for RepeatTimeHandle { fn ontrigger(&mut self, timer: &mut Timer, id: u64) -> RetTimer { self.times += 1; if self.times > 10 { return RetTimer::Over; } println!("ontigger = {:} self.times = {}", id, self.times); RetTimer::Ok // timer.add_timer(mut handle: Handler) } }

fn main() { println!("ok"); let mut timer = Timer::new(u64::MAX); let time1 = timer.addtimer(Handler::newstep( RepeatTimeHandle{times:0}, 1000000, true, true)); println!("time == {}", time1); loop { timer.ticktime(tunmtimer::nowmicrosecond()); if timer.is_empty() { break; } } } ```