@Override
	public void run() {
		int packlength = -1 ;
		int read = 0 ;
		
		
		try{
			while((packlength=dis.readInt())!=-1){
				
				int remain = packlength;
				int k =0;
				read = 0;
				byte[] by = new byte[remain];
			//	System.out.println("receive "+ packlength +"bytes");
				while(remain>0){
					
					read = is.read(by, k, remain);
					k += read;
					remain -= read;
				}
			//	System.out.println("by is "+ by.length);
				handle(by,packlength);
			}
		}catch(Exception e){
			e.printStackTrace();
		}
	}