use a hashset instead of vec for dead ids
This commit is contained in:
parent
f6cbe3f800
commit
5478e5e40e
|
@ -3,7 +3,7 @@ use crate::value::Value;
|
|||
use crate::vm::{Creature, Panic};
|
||||
use ran::ran_u8;
|
||||
use std::cell::RefCell;
|
||||
use std::collections::HashMap;
|
||||
use std::collections::{HashMap, HashSet};
|
||||
use std::mem::swap;
|
||||
use std::rc::Rc;
|
||||
use std::time::{Duration, Instant};
|
||||
|
@ -67,7 +67,7 @@ pub struct Zoo {
|
|||
procs: Vec<Status>,
|
||||
empty: Vec<usize>,
|
||||
ids: HashMap<&'static str, usize>,
|
||||
dead: Vec<&'static str>,
|
||||
dead: HashSet<&'static str>,
|
||||
kill_list: Vec<&'static str>,
|
||||
sleeping: HashMap<&'static str, (Instant, Duration)>,
|
||||
active_idx: usize,
|
||||
|
@ -81,7 +81,7 @@ impl Zoo {
|
|||
empty: vec![],
|
||||
ids: HashMap::new(),
|
||||
kill_list: vec![],
|
||||
dead: vec![],
|
||||
dead: HashSet::new(),
|
||||
sleeping: HashMap::new(),
|
||||
active_idx: 0,
|
||||
active_id: "",
|
||||
|
@ -155,7 +155,7 @@ impl Zoo {
|
|||
self.procs[*idx] = Status::Empty;
|
||||
self.empty.push(*idx);
|
||||
self.ids.remove(id);
|
||||
self.dead.push(id);
|
||||
self.dead.insert(id);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user