阻塞是JAVA多线程编程的一个状态,当FileInputStream在执行read()方法的时候,CPU就留出时间块来执行这个方法,这时间里别的方法就只能等待,当read方法阻塞的时候,就会有另一个方法开始执行。至于你感觉不到,那是多线程的表现形式,就是为了让你感觉不到。当有多个方法需要执行的时候,单线程机会依次执行,多线程机则会将CPU分成多个时间片,在不同的时间片里执行不同的方法,给人的感觉就是多个方法同时在执行。