Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.nio.channels
Interface InterruptibleChannel

All Superinterfaces:
  Channel, Closeable

All Known Implementing Classes:
  AbstractInterruptibleChannel, AbstractSelectableChannel, DatagramChannel, FileChannel, Pipe.SinkChannel, Pipe.SourceChannel, SelectableChannel, ServerSocketChannel, SocketChannel

    public interface InterruptibleChannel

extends Channel

A channel that can be asynchronously closed and interrupted.

A channel that implements this interface is asynchronously closeable: If a thread is blocked in an I/O operation on an interruptible channel then another thread may invoke the channel's `close` method. This will cause the blocked thread to receive an `AsynchronousCloseException`.

A channel that implements this interface is also interruptible: If a thread is blocked in an I/O operation on an interruptible channel then another thread may invoke the blocked thread's `interrupt` method. This will cause the channel to be closed, the blocked thread to receive a `ClosedByInterruptException`, and the blocked thread's interrupt status to be set.

If a thread's interrupt status is already set and it invokes a blocking I/O operation upon a channel then the channel will be closed and the thread will immediately receive a `ClosedByInterruptException`; its interrupt status will remain set.

A channel supports asynchronous closing and interruption if, and only if, it implements this interface. This can be tested at runtime, if necessary, via the `instanceof` operator.

Since:
  1.4

Method Summary
`void` | `close()` Closes this channel.

Methods inherited from interface java.nio.channels.Channel
`isOpen`

Method Detail

### close

    void close()
               throws IOException

  Closes this channel.

  Any thread currently blocked in an I/O operation upon this channel will receive an `AsynchronousCloseException`.

  This method otherwise behaves exactly as specified by the `Channel` interface.

  Specified by:
    `close` in interface `Channel`
  Specified by:
    `close` in interface `Closeable`
  Throws:
    `IOException` - If an I/O error occurs

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 1993, 2010, Oracle and/or its affiliates. All rights reserved.