alex/src/stdin.rs

30 lines
581 B
Rust

use std::io;
use std::sync::{Arc, Mutex};
use crate::server;
pub fn handle_stdin(counter: Arc<Mutex<server::ServerProcess>>) {
let stdin = io::stdin();
let input = &mut String::new();
loop {
input.clear();
if stdin.read_line(input).is_err() {
continue;
};
{
let mut server = counter.lock().unwrap();
if let Err(e) = server.send_command(input) {
println!("{}", e);
};
}
if input.trim() == "stop" {
std::process::exit(0);
}
}
}