fn read_input( input: &mut Box<dyn SerialInput>, thread_in_avail_evt: &Event, buffer: Arc<Mutex<VecDeque<u8>>>, kill_evt: Event, ) -> Result<()>