Canceling an asynchronous IO operation throws NPE
Alan.Bateman at Sun.COM
Mon Jul 28 06:52:22 PDT 2008
> Hi Alan,
> On canceling an IO operation that is in progress,I get a
> CancellationException which is expected as per the spec.
> But in the stack trace, I also see a NullPointerException.
> Following is the stack trace.
> at sun.nio.ch.PendingFuture.get(PendingFuture.java:136)
> at AsyncIOCancelTests.main(AsyncIOCancelTests.java:19)
> Exception in thread "Thread-1" java.lang.NullPointerException
> at sun.nio.ch.PendingFuture$1.run(PendingFuture.java:206)
> at java.lang.Thread.run(Thread.java:674)
> Please let me know if this is correct.
There's a bug here - thanks! It arises when you cancel an I/O operation
that doesn't have a CompletionHandler but the code is trying to invoke
its cancelled method. It should be harmless (meaning an annoyance
printed to the console) and I'll fix it for the next build.
More information about the nio-dev