diff --git a/src/server_conf/conexion.rs b/src/server_conf/conexion.rs
index db69f5a..f3f785a 100644
--- a/src/server_conf/conexion.rs
+++ b/src/server_conf/conexion.rs
@@ -1,10 +1,8 @@
 use std::net::{TcpListener, TcpStream};
-use std::os::unix::net::{UnixListener, UnixStream};
+use std::os::unix::net::{UnixStream};
 use std::io::prelude::*;
-use std::result;
 use crate::conf;
 use std::sync::{Arc, RwLock};
-use std::path::{Path, PathBuf};
 
 const OP_ADD: u8 = 0;
 const OP_DEL: u8 = 1;
diff --git a/src/server_conf/server.rs b/src/server_conf/server.rs
index d007d28..2ec5f30 100644
--- a/src/server_conf/server.rs
+++ b/src/server_conf/server.rs
@@ -1,9 +1,8 @@
 use std::net::{TcpListener, TcpStream};
-use std::os::unix::net::{UnixListener, UnixStream};
-use std::io::prelude::*;
-use std::result;
+use std::os::unix::net::{UnixListener};
 use crate::conf;
 use crate::server_conf::conexion::Conexion;
+use std::thread;
 use std::sync::{Arc, RwLock};
 use std::path::{Path, PathBuf};
 
@@ -35,7 +34,8 @@ pub fn start(conf: Arc<RwLock<conf::Config>>){
     for stream in ser.listener.incoming() {
         match stream{
         Ok(s) => {
-                Conexion::new(conf.clone(), s).process_reques();
+                let c = conf.clone();
+                thread::spawn(|| Conexion::new(c, s).process_reques());
             },
         Err(_e) => println!("{}",_e),
         }