while((b = filein.read(buffer)) != -1){
       System.out.println("read bytes : "+ b);
       dos.write(buffer);
       dos.flush();
      
       if(b== -1)
       {
        System.out.println("-1이다");
        break;
       }
       System.out.println("전송..");
      }
      System.out.println("완료");
      filein.close();
     socket.close();       <- 소켓을 닫으면 이상없이 실행되는데요..
                                           닫고난 후
----------소켓 닫으면 뜨는 메시지 (계속뜸)----------------------------------
java.net.SocketException: socket closed
 at java.net.SocketInputStream.socketRead0(Native Method)
 at java.net.SocketInputStream.read(Unknown Source)
 at java.net.SocketInputStream.read(Unknown Source)
 at java.io.DataInputStream.readUnsignedShort(Unknown Source)
 at java.io.DataInputStream.readUTF(Unknown Source)
 at java.io.DataInputStream.readUTF(Unknown Source)
 at MyServer.main(MyServer.java:38)
------------------------------------------------------------------------------

파일을 전송해주고 서버거 소켓을 안닫으면 클라이언트에서 계속 대기를 하거든요...
소켓안닫고  그냥 소켓 정지 후 나중에 다시 접속해서 소켓 실행시키고 다시 파일 받을수 있게 할수있을까요?


/////////////클라 데이터 받는 부분///////////////////////////
 while((i = instr.read(buffer)) != -1){
       Log.w(null, "read bytes : " + i);
          
           pp.write(buffer, 0, i);
           pp.flush();
           Log.w(null, "filename1: " );
            }

////////////////////////////////////소켓 안닫으면  -1이 반환이안되서 while문 못빠져나감//////////////////////////////
서버강제로 닫으면 통과됨  (디버그해본결과 서버를 강제로 닫으면 i= -1이 되서 나가더라구요..


socket. ???? 어떤 명령어를 써야지  데이터 받고난후 정지안하고 다음작업을 할수 있을까요 클라이언트가?

서버도 지속적으로 사용할수 있고..