| 
					
				 | 
			
			
				@@ -57,6 +57,7 @@ class Client: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 output_data = file_to_send.read(self.buffer_chunk_size) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 writer.write(output_data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 await writer.drain() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                await asyncio.sleep(1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     async def run_receiving_client(self, file_path='~/input.txt'): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         self._file_path = file_path 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -67,10 +68,11 @@ class Client: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         self._working = True 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         with open(self.file_path, 'wb') as file_to_receive: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             while not self.stopping: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                try: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    input_data = await reader.readexactly(self.buffer_chunk_size) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                except asyncio.IncompleteReadError as e: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    input_data = e.partial 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                print("reading...") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                input_data = await reader.read(self.buffer_chunk_size) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if not input_data: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    continue 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                print(input_data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 file_to_receive.write(input_data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     def stop(self, *_): 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -112,9 +114,9 @@ if __name__ == '__main__': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     loop = asyncio.get_event_loop() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     client = Client( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         host='127.0.0.1', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        port=5000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        port=(5000 if action == 'send' else 5001), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    loop.add_signal_handler(signal.SIGINT, client.stop, loop) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    # loop.add_signal_handler(signal.SIGINT, client.stop, loop) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     logging.info("Starting client...") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if action.lower() == 'send': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         loop.run_until_complete(client.run_sending_client(file_path=file_path)) 
			 |