title: sslsocket read only once from inputstream,why?
body: <p>Part of the connection to the server is complete, but can not always read data from inputstream and can only be read once.</p>
  
  <pre><code>    public void startSSLClient() throws IOException {
      inf = new Inflater();
      mSocketBufferReader = new BufferedReader(new InputStreamReader(mSslSocket.getInputStream()));
      new Thread() {
          boolean online =false;
          String s;
          @Override
          public void run() {
              try {
                  while ( true ) {
                      String str = mSocketBufferReader.readLine();
                      if (!TextUtils.isEmpty(str)) {
                          Logger.e("PacketReader","process packet : "+str);
                      }
                  }
              }
              catch (Exception e) {
                  System.out.println("Error: " + e);
              }
          }
      }.start();
  }
  </code></pre>
  
  <p>If I try this, it's working that always read from inputstream. </p>
  
  <pre><code>    public void startSSLClient() throws IOException {
      inf = new Inflater();
  
      new Thread() {
          boolean online =false;
          String s;
          @Override
          public void run() {
              try {
                  while ( true ) {
                      BufferedReader mSocketBufferReader = new BufferedReader(new InputStreamReader(mSslSocket.getInputStream()));
                      String str = mSocketBufferReader.readLine();
                      if (!TextUtils.isEmpty(str)) {
                          Logger.e("PacketReader","process packet : "+str);
                      }
                  }
              }
              catch (Exception e) {
                  System.out.println("Error: " + e);
              }
          }
      }.start();
  }
  </code></pre>
  
  <p>I don't know the reason. I just want to use a global field. I don't want to always use a new local field.</p>