clean unused mutex
This commit is contained in:
		
							parent
							
								
									a698bbb14f
								
							
						
					
					
						commit
						ffab5ed4a5
					
				| @ -1,14 +1,14 @@ | |||||||
| use std::net::TcpStream; | use std::net::TcpStream; | ||||||
| use std::io::prelude::*; | use std::io::prelude::*; | ||||||
| use std::thread; | use std::thread; | ||||||
| use std::sync::{Arc, Mutex, RwLock}; | use std::sync::{Arc, RwLock}; | ||||||
| 
 | 
 | ||||||
| use crate::protocol; | use crate::protocol; | ||||||
| pub mod guard; | pub mod guard; | ||||||
| 
 | 
 | ||||||
| pub struct Client<'a>{ | pub struct Client<'a>{ | ||||||
|     client: Arc<Mutex<TcpStream>>, |     client: TcpStream, | ||||||
|     server:Arc<Mutex<TcpStream>>, |     server:TcpStream, | ||||||
|     hs: protocol::HandShake<'a>, |     hs: protocol::HandShake<'a>, | ||||||
|     run : Arc<RwLock<bool>>, |     run : Arc<RwLock<bool>>, | ||||||
| } | } | ||||||
| @ -16,8 +16,8 @@ pub struct Client<'a>{ | |||||||
| impl<'a> Client<'a> { | impl<'a> Client<'a> { | ||||||
|     pub fn new(client: TcpStream, server: TcpStream, handshake: protocol::HandShake) -> Client{ |     pub fn new(client: TcpStream, server: TcpStream, handshake: protocol::HandShake) -> Client{ | ||||||
|         Client { |         Client { | ||||||
|             client: Arc::new(Mutex::new(client)), |             client: client, | ||||||
|             server: Arc::new(Mutex::new(server)), |             server: server, | ||||||
|             hs: handshake, |             hs: handshake, | ||||||
|             run: Arc::new(RwLock::new(true)), |             run: Arc::new(RwLock::new(true)), | ||||||
|             //threads: None,
 |             //threads: None,
 | ||||||
| @ -28,19 +28,18 @@ impl<'a> Client<'a> { | |||||||
|         println!("len_pack {}", self.hs.get_host_name()); |         println!("len_pack {}", self.hs.get_host_name()); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     fn join_conexions_mutex(c1: Arc<Mutex<TcpStream>>, |     fn join_conexions_mutex(mut origin: TcpStream, | ||||||
|             c2: Arc<Mutex<TcpStream>>, |             mut dest: TcpStream, | ||||||
|             run: Arc<RwLock<bool>>){ |             run: Arc<RwLock<bool>>){ | ||||||
|         let mut buf: [u8; 100000] = [0; 100000]; |         let mut buf: [u8; 200] = [0; 200]; | ||||||
|         let mut client = c1.lock().unwrap().try_clone().unwrap(); |  | ||||||
|         while *run.read().unwrap() { |         while *run.read().unwrap() { | ||||||
|             let res=client.read(&mut buf); |             let res=origin.read(&mut buf); | ||||||
|             match res { |             match res { | ||||||
|                 Ok(leng) => { |                 Ok(leng) => { | ||||||
|                     if leng == 0 { |                     if leng == 0 { | ||||||
|                         *run.write().unwrap()=false; |                         *run.write().unwrap()=false; | ||||||
|                     } |                     } | ||||||
|                     match c2.lock().unwrap().write(&buf [.. leng]) { |                     match dest.write(&buf [.. leng]) { | ||||||
|                         Ok(_l) => {}, |                         Ok(_l) => {}, | ||||||
|                         Err(_e) => *run.write().unwrap()=false, |                         Err(_e) => *run.write().unwrap()=false, | ||||||
|                     } |                     } | ||||||
| @ -54,8 +53,8 @@ impl<'a> Client<'a> { | |||||||
| 
 | 
 | ||||||
|     pub fn start_proxy(&self) -> (thread::JoinHandle<()>, thread::JoinHandle<()>) { |     pub fn start_proxy(&self) -> (thread::JoinHandle<()>, thread::JoinHandle<()>) { | ||||||
| 
 | 
 | ||||||
|         let c1 = self.client.clone(); |         let c1 = self.client.try_clone().unwrap(); | ||||||
|         let s1 = self.server.clone(); |         let s1 = self.server.try_clone().unwrap(); | ||||||
|         let r1 = self.run.clone(); |         let r1 = self.run.clone(); | ||||||
|         let handler1 = thread::spawn( || { |         let handler1 = thread::spawn( || { | ||||||
|             Self::join_conexions_mutex(s1, |             Self::join_conexions_mutex(s1, | ||||||
| @ -63,8 +62,8 @@ impl<'a> Client<'a> { | |||||||
|                 r1)} |                 r1)} | ||||||
|         ); |         ); | ||||||
| 
 | 
 | ||||||
|         let c2 = self.client.clone(); |         let c2 = self.client.try_clone().unwrap(); | ||||||
|         let s2 = self.server.clone(); |         let s2 = self.server.try_clone().unwrap(); | ||||||
|         let r2 = self.run.clone(); |         let r2 = self.run.clone(); | ||||||
|         let handler2 = thread::spawn( || { |         let handler2 = thread::spawn( || { | ||||||
|             Self::join_conexions_mutex(c2, |             Self::join_conexions_mutex(c2, | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user