Closes the underlying serial connection.
Closes the underlying serial connection. Any callers blocked on read or write will return. A call of this method has no effect if the serial port is already closed.
IOException
on IO error
Checks if this serial port is closed.
Reads data from underlying serial connection into a ByteBuffer.
Reads data from underlying serial connection into a ByteBuffer. Note that data is read into the buffer's memory, starting at the first position. The buffer's limit is set to the number of bytes read.
A call to this method is blocking, however it is interrupted if the connection is closed.
This method works only for direct buffers.
a ByteBuffer into which data is read
the actual number of bytes read
IOException
on IO error
PortInterruptedException
if port is closed while reading
Writes data from a ByteBuffer to underlying serial connection.
Writes data from a ByteBuffer to underlying serial connection. Note that data is read from the buffer's memory, its attributes such as position and limit are not modified.
The write is non-blocking, this function returns as soon as the data is copied into the kernel's transmission buffer.
This method works only for direct buffers.
a ByteBuffer from which data is taken
the actual number of bytes written
IOException
on IO error
Represents a serial connection in a more secure and object-oriented style than
UnsafeSerial
. In contrast to the latter, this class encapsulates and secures any pointers used to communicate with the native backend and is thread-safe.The underlying serial port is assumed open when this class is initialized.