Talk:Non-blocking I/O (Java)

Untitled
Can you add some details about the difference between java.io.* and java.nio.* Jgold03 01:20, 27 March 2006 (UTC)

dead link - New I/O APIs - description of New I/O
maybe this is about what the link pointed to: http://java.sun.com/developer/technicalArticles/releases/nio/index.html

--212.202.41.193 20:19, 30 April 2007 (UTC)

In "Copying NIO Buffers", Method 1 is flawed. The buffer2 object is completely lost after executing "buffer2 = buffer1;". After completing the execution, buffer2 points actually to buffer1.

I think the whole Copying NIO Buffers is a pointless section anyway. I suggest removing it. Actually, I'll just remove it and if someone thinks it should be re-added, we'll re-add a valid version. DanielPitts (talk) 19:11, 15 January 2008 (UTC)

Last two points of "Some Usage Information for NIO Buffers" are completly wrong. NIO buffers don't block. get into array larger than remaining throws BufferUnderflowException instead. get into an array behind read only buffer will proceed as usual - read only buffer is just a wrapper, but never gives its clients the underlaying array anyway. —Preceding unsigned comment added by 192.9.112.196 (talk) 07:55, 12 December 2007 (UTC)

You are right, blocking NIO was nonsense. Removed.

Regular expressions
While it's true that the NIO pages have examples on how to use regular expressions with NIO, regular expressions are not a part of NIO. Thus I feel it's a bit misleading that there is a "Regular expressions" subheading below the "Features and organization" heading. Perhaps it would be clearer to have a new top-level heading "Example uses" or similar and discussing regular expressions below that.

--88.114.29.229 (talk) 18:43, 17 March 2010 (UTC)

Seems that maybe I was wrong after all, the regular expressions are listed as a feature in the JSR 51..

--88.114.29.229 (talk) 19:29, 17 March 2010 (UTC)

Even though it's listed as a feature, I don't see how it can be called part of NIO. NIO certainly allows the use of regex but regex is not part of NIO (at least as far as I can see).

My main gripe though was that the example takes up so much space compared to the more core areas of NIO. It makes it seem that regex is a core part of NIO whereas it's merely a way of using the existing regex API with NIO. In addition, if the regex example is only a minor alteration of the offical example, why keep it? A link should be sufficient. —Preceding unsigned comment added by 156.48.57.36 (talk) 12:10, 8 April 2011 (UTC)

Examples
I think the new socket selectors and socket channels should be demonstrated with some example to avoid giving the impression that regular expressions and file handling alone represent the major advances.

--88.114.29.229 (talk) 18:43, 17 March 2010 (UTC)

Links not working anymore...
Since dump-shit Oracle wiped the 1.4 API (they didn't really get that the Java API is supposed to never change!), you need to replace some links with new ones. --178.197.228.138 (talk) 18:19, 18 January 2014 (UTC)

Doesn't "NIO" Stand for "non-blocking I/O" ?
According from this link from documentation: http://docs.oracle.com/javase/7/docs/technotes/guides/io/enhancements.html#7

File I/O (featuring NIO 2.0) in the Java Tutorials; NIO stands for non-blocking I/O — Preceding unsigned comment added by 91.219.115.2 (talk) 05:59, 6 April 2014 (UTC)


 * I have always thought that NIO stood for "Non-blocking I/O", as some of the Oracle documentation says. But reviewing Java 5 documentation, they say "The Java NIO (New Input/Output)" (https://docs.oracle.com/en/java/javase/15/core/java-nio.html). Maybe NIO version 1 is more "new" and version 2 more "non-blocking"? Chiro79 (talk) 11:15, 18 August 2022 (UTC)

"NIO" is "New", not "Non-Blocking"
According to the 1.5 release notes, NIO stands for "New IO": "The new I/O (NIO) APIs introduced in v 1.4..."

Suggesting that it stands for non-blocking IO is misleading to new Java developers, in that it suggests these are special IO APIs for special circumstances. In fact they're just "new", and since they're in many ways more convenient, identifying them as "new" will lead developers to more readily explore them. The "non-blocking" terminology should be removed. Vancinad (talk) 23:37, 8 February 2022 (UTC)