public void run ()
    {
        byte[] buffer = new byte[1024];
        int len = -1;
        
        try
        {
            while(true)
            {
                while(stop)
                {
                    try{
                        Thread.sleep(10);
                    }catch( Exception e)
                    {
                        
                    }
                }
                
                String temp = null;
                String newString = "";
                int tempLength = 0;
                    while (( len = this.in.read(buffer)) > -1)
                    {
                        temp = new String(buffer,0,len);
                        if(!temp.equals(""))
                        {
                            tempLength += len;
                            newString += temp;
                            if(tempLength > readThreshold)
                            {
                                tempLength = 0;
                                newString = newString.substring(0, newString.length()-1);
                                this.dataCollector.updateStringBuffer(newString);
                                newString = "";
                            }
                        }
                    }
            }
        }
        catch ( Exception e )
        {
            e.printStackTrace();
        }            
    }