fn start(sender: MonitorSender, receiver: MonitorReceiver, executor: ExecutorControlObj) -> MonitorControlObj {
        let monitor = Self {
            sender,
            thread: ThreadData::spawn(receiver, executor),
        };
        Arc::new(monitor)
    }
// Start the system monitor. The sooner, the better.
Start the system monitor. The sooner, the better.
Start the system monitor . The sooner the better .
fn start(sender: MonitorSender, receiver: MonitorReceiver, executor: ExecutorControlObj) -> MonitorControlObj {
        let monitor = Self {
            sender,
            thread: ThreadData::spawn(receiver, executor),
        };
        Arc::new(monitor)
    }
fn start ( sender : MonitorSender , receiver : MonitorReceiver , executor : ExecutorControlObj ) -> MonitorControlObj { let monitor = Self { sender , thread : ThreadData :: spawn ( receiver , executor ) , } ; Arc :: new ( monitor ) }
Start the system monitor.
Start the system monitor .
sender
MonitorSender
receiver
MonitorReceiver
executor
ExecutorControlObj