30 lines
581 B
Rust
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);
|
|
}
|
|
}
|
|
}
|