This commit is contained in:
aozhiwei 2023-10-19 22:25:10 +08:00
parent 30fc9dcc0a
commit 90f5d9f291

View File

@ -124,24 +124,19 @@ impl Timer {
} }
fn clear(&mut self) { fn clear(&mut self) {
let free_timer = |tv: &mut [TimerListListHeadRp]| { let free_timer = |head: &mut TimerListListHeadRp| {
for i in 0..tv.len() { while !head.borrow().empty() {
let head = &tv[i]; let timer = &head.borrow().first_entry().upgrade().unwrap();
while !head.borrow().empty() { timer.borrow_mut().timer_entry.borrow_mut().del_init();
let timer = &head.borrow().first_entry().upgrade().unwrap(); if timer.borrow().attach_entry.borrow().empty() {
timer.borrow_mut().timer_entry.borrow_mut().del_init(); timer.borrow().attach_entry.borrow_mut().del_init();
if timer.borrow().attach_entry.borrow().empty() {
timer.borrow().attach_entry.borrow_mut().del_init();
}
} }
} }
}; };
//free_timer(&mut self.free_timer_list); self.traverse_timer_list(
free_timer(&mut self.tv1); &mut |timer_list: &mut TimerListListHeadRp| {
free_timer(&mut self.tv2); free_timer(timer_list);
free_timer(&mut self.tv3); });
free_timer(&mut self.tv4);
free_timer(&mut self.tv5);
} }
fn new_timer_list(&mut self) -> Rc::<RefCell::<TimerList>> { fn new_timer_list(&mut self) -> Rc::<RefCell::<TimerList>> {