fn spawn(receiver: MonitorReceiver, executor: ExecutorControlObj) -> Option<std::thread::JoinHandle<()>> {
        let thread = thread::spawn(move || {
            let mut res = Self {
                receiver,
                executor,
                senders: Vec::new(),
            };
            res.run()
        });
        Some(thread)
    }
// launch the long running system monitor thread
launch the long running system monitor thread
launch the long running system monitor thread
fn spawn(receiver: MonitorReceiver, executor: ExecutorControlObj) -> Option<std::thread::JoinHandle<()>> {
        let thread = thread::spawn(move || {
            let mut res = Self {
                receiver,
                executor,
                senders: Vec::new(),
            };
            res.run()
        });
        Some(thread)
    }
fn spawn ( receiver : MonitorReceiver , executor : ExecutorControlObj ) -> Option < std :: thread :: JoinHandle < ( ) > > { let thread = thread :: spawn ( move | | { let mut res = Self { receiver , executor , senders : Vec :: new ( ) , } ; res . run ( ) } ) ; Some ( thread ) }
launch the long running system monitor thread
launch the long running system monitor thread
receiver
MonitorReceiver
executor
ExecutorControlObj