When trying to close a TwitterStream, the thread hangs at is.close() call inside StatusStream.close() function. This is because the thread that handles the reading is waiting for input from the BufferedReader.readLine() and this function is synchronized. So, if there is another thread tries to close this stream, it will hang by the synchronized method.
This is a known limitation on the old java io package.
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4859836 and
http://forums.sun.com/thread.jspa?threadID=632191
Please consider using the NIO package.