Q
java输入流
2
A
回答
1
,JavaDoc会不会告诉你在返回段 -
an estimate of the number of bytes that can be read (or skipped over) from this input stream without blocking or 0 when it reaches the end of the input stream.
+0
我的不好。它不会阻止非阻塞IO使用吗? – fulmicoton
1
从理论上讲,如果到达流的末尾,没有要读取的字节,可用返回0.但要小心。并非所有的流都提供了这种方法的真正实现。 InputStream本身始终返回0.
如果您需要非阻塞功能,即从流中读取而不被读取时阻塞,请改为使用NIO。
0
从Java 7 documentation:
“可以从该输入流中读取(或跳过)的字节数的不阻塞或0,当它到达输入流的结束的估计”。
所以,我会说它在这种情况下应该返回0。这对我来说似乎也是最直观的行为。
0
返回可以从此输入流读取(或跳过)的字节数的估计值,而不会因为此输入流的下一次调用方法而被阻止。下一次调用可能是同一个线程或另一个线程。单个读取或跳过这么多字节不会被阻塞,但可以读取或跳过更少的字节。
The available method for class InputStream always returns 0.
http://download.oracle.com/javase/6/docs/api/java/io/InputStream.html#available%28%29
2
相关问题
- 1. java输入输出流
- 2. Java EE输入/输出流
- 3. Java ProcessBuilder:输入/输出流
- 4. Java:写入Scala输出流
- 5. 刷新输入流:java
- 6. 使用Java URL输入流
- 7. Java流键盘输入
- 8. Java读取JSON输入流
- 9. 无效的流头:47455420 - Java输入流
- 10. Java/Android - 从输入流读取后写入输出流
- 11. 带输入/输出流的Java进程
- 12. Java的自定义输入输出流
- 13. Java的输入输出重定向流
- 14. 如何清除java中的输入流
- 15. Java HttpConnection/HttpsConnection输入/错误流
- 16. Java输入流如何关闭?
- 17. 在java中读取输入流
- 18. java - 使用servlet下载输入流
- 19. 在java中输入流结束
- 20. Java缓冲输入流不能读取
- 21. Java输入流“阻塞”和多线程
- 22. Java输入流追加而不删除
- 23. Java - 从输入流读取时卡住
- 24. Java输入流缓冲区对象?
- 25. 从输入流中读取html java
- 26. C++输入流
- 27. 插入到php输入流(php://输入)
- 28. JBoss输入/输出流
- 29. 输入流 - 关闭
- 30. Python:C++ - 像流输入
那么,文档确实说这个方法应该被子类重写,所以行为依赖于实现,并且可能对不同类型的流有所不同。 – pablochan