public final class MidiInputPort
extends MidiReceiver
implements Closeable
java.lang.Object | ||
↳ | android.media.midi.MidiReceiver | |
↳ | android.media.midi.MidiInputPort |
该类用于将数据发送到MIDI设备上的端口
Public methods |
|
---|---|
void |
close() 关闭此流并释放与其关联的所有系统资源。 |
final int |
getPortNumber() 返回此端口的端口号 |
void |
onFlush() 当接收器被指示放弃所有待处理的MIDI数据时调用。 |
void |
onSend(byte[] msg, int offset, int count, long timestamp) 每当接收机通过新的MIDI数据时调用。 |
Protected methods |
|
---|---|
void |
finalize() 当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。 |
Inherited methods |
|
---|---|
From class android.media.midi.MidiReceiver
|
|
From class java.lang.Object
|
|
From interface java.io.Closeable
|
|
From interface java.lang.AutoCloseable
|
void close ()
关闭此流并释放与其关联的所有系统资源。 如果流已经关闭,则调用此方法不起作用。
Throws | |
---|---|
IOException |
int getPortNumber ()
返回此端口的端口号
Returns | |
---|---|
int |
the port's port number |
void onFlush ()
当接收器被指示放弃所有待处理的MIDI数据时调用。 如果子类维护将来要处理的MIDI数据的列表或队列,则子类应该重写此方法。
Throws | |
---|---|
IOException |
void onSend (byte[] msg, int offset, int count, long timestamp)
每当接收机通过新的MIDI数据时调用。 子类覆盖此方法来接收MIDI数据。 如果计数超过getMaxMessageSize()
可能会失败。 注:msg数组参数仅在此调用的上下文中有效。 msg字节应由接收方复制,而不是保留对该参数的引用。 另外,修改msg数组参数的内容可能会导致同一应用程序中的其他接收者在其{link #onSend}方法中接收不正确的值。
Parameters | |
---|---|
msg |
byte : a byte array containing the MIDI data |
offset |
int : the offset of the first byte of the data in the array to be processed |
count |
int : the number of bytes of MIDI data in the array to be processed |
timestamp |
long : the timestamp of the message (based on nanoTime() |
Throws | |
---|---|
IOException |
void finalize ()
当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。 子类会覆盖finalize
方法来处置系统资源或执行其他清理。
的常规协定finalize
是,它被调用,如果当在Java TM虚拟机已确定不再有由该目的可以通过还没有死亡,除了作为一个动作的结果的任何线程访问的任何手段取决于某些其他可以完成的对象或类别的最终定稿。 finalize
方法可以采取任何操作,包括使该对象再次可用于其他线程; 然而, finalize
的通常目的是在对象被不可撤销地丢弃之前执行清理操作。 例如,表示输入/输出连接的对象的finalize方法可能会执行显式I / O事务,以在永久丢弃该对象之前中断连接。
类Object
的finalize
方法Object
执行特殊操作; 它只是正常返回。 Object
子类可能会覆盖此定义。
Java编程语言不保证哪个线程将为任何给定对象调用finalize
方法。 但是,保证调用finalize的线程在调用finalize时不会保留任何用户可见的同步锁。 如果finalize方法引发未捕获的异常,则忽略该异常,并终止该对象的终止。
在为对象调用 finalize
方法后,不会采取进一步的操作,直到Java虚拟机再次确定不再有任何途径可以通过任何尚未死亡的线程访问此对象,包括可能的操作通过准备完成的其他对象或类别,此时该对象可能被丢弃。
对于任何给定的对象, finalize
方法永远不会由Java虚拟机多次调用。
由 finalize
方法抛出的任何异常 finalize
导致此对象的终止被暂停,但会被忽略。
Throws | |
---|---|
Throwable |