From bcc51d3f0e9e1b55601ebea242975d08f05dacb4 Mon Sep 17 00:00:00 2001 From: Bastian Gruber Date: Mon, 1 May 2023 11:52:22 +0200 Subject: [PATCH] Simplyfy --- problem_04/bin/server.rs | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/problem_04/bin/server.rs b/problem_04/bin/server.rs index 340771d..5e9e0eb 100644 --- a/problem_04/bin/server.rs +++ b/problem_04/bin/server.rs @@ -1,5 +1,4 @@ use std::collections::HashMap; -use std::sync::Mutex; use std::{io, net::SocketAddr, str, sync::Arc}; use tokio::{net::UdpSocket, sync::mpsc}; use tracing::info; @@ -14,7 +13,7 @@ async fn main() -> io::Result<()> { let r = Arc::new(sock); let s = r.clone(); let (tx, mut rx) = mpsc::channel::<(Vec, SocketAddr)>(1_000); - let storage = Arc::new(Mutex::new(HashMap::::new())); + let mut storage = HashMap::::new(); tokio::spawn(async move { info!("Send back!"); @@ -33,16 +32,11 @@ async fn main() -> io::Result<()> { let message = format!("version=gruberb 1.0"); tx.send((message.as_bytes().to_vec(), addr)).await.unwrap(); } else if message.contains("=") { - let (mut key, value) = message.split_once('=').unwrap(); - if key.is_empty() { - key = " "; - } + let (key, value) = message.split_once('=').unwrap(); storage - .lock() - .unwrap() .insert(key.to_string(), value.to_string()); } else { - let value = storage.lock().unwrap().get(message).unwrap_or(&String::new()).clone(); + let value = storage.get(message).unwrap_or(&String::new()).clone(); let message = format!("{message}={value}"); tx.send((message.as_bytes().to_vec(), addr)).await.unwrap(); }