INNER CODE UNIT · Rust
spawn_start_zone_monitor
Blur009/Blur-AutoClicker · src-tauri/src/lib.rs:307
fn spawn_start_zone_monitor(app: &AppHandle) {
let handle = app.clone();
ZONE_MONITOR_RUNNING.store(true, std::sync::atomic::Ordering::SeqCst);
std::thread::spawn(move || {
let mut prev_in_start_zone = false;
let mut prev_has_start_zones = false;
while ZONE_MONITOR_RUNNING.load(std::sync::atomic::Ordering::SeqCst) {
std::thread::sleep(std::time::Duration::from_millis(100));
let state = handle.state::<ClickerState>();
let (has_start_zones, zones) = {
let settings = state.settings.lock().unwrap_or_else(poisoned_inner);
let has = settings.stop_zones_enabled
&& settings.stop_zones.iter().any(|z| z.action == "start");
(has, settings.stop_zones.clone())
};