Most visited

Recently visited

Added in API level 23

MidiInputPort

public final class MidiInputPort
extends MidiReceiver implements Closeable

java.lang.Object
   ↳ android.media.midi.MidiReceiver
     ↳ android.media.midi.MidiInputPort


该类用于将数据发送到MIDI设备上的端口

Summary

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

Public methods

close

Added in API level 23
void close ()

关闭此流并释放与其关联的所有系统资源。 如果流已经关闭,则调用此方法不起作用。

Throws
IOException

getPortNumber

Added in API level 23
int getPortNumber ()

返回此端口的端口号

Returns
int the port's port number

onFlush

Added in API level 23
void onFlush ()

当接收器被指示放弃所有待处理的MIDI数据时调用。 如果子类维护将来要处理的MIDI数据的列表或队列,则子类应该重写此方法。

Throws
IOException

onSend

Added in API level 23
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

Protected methods

finalize

Added in API level 23
void finalize ()

当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。 子类会覆盖finalize方法来处置系统资源或执行其他清理。

的常规协定finalize是,它被调用,如果当在Java TM虚拟机已确定不再有由该目的可以通过还没有死亡,除了作为一个动作的结果的任何线程访问的任何手段取决于某些其他可以完成的对象或类别的最终定稿。 finalize方法可以采取任何操作,包括使该对象再次可用于其他线程; 然而, finalize的通常目的是在对象被不可撤销地丢弃之前执行清理操作。 例如,表示输入/输出连接的对象的finalize方法可能会执行显式I / O事务,以在永久丢弃该对象之前中断连接。

Objectfinalize方法Object执行特殊操作; 它只是正常返回。 Object子类可能会覆盖此定义。

Java编程语言不保证哪个线程将为任何给定对象调用finalize方法。 但是,保证调用finalize的线程在调用finalize时不会保留任何用户可见的同步锁。 如果finalize方法引发未捕获的异常,则忽略该异常,并终止该对象的终止。

在为对象调用 finalize方法后,不会采取进一步的操作,直到Java虚拟机再次确定不再有任何途径可以通过任何尚未死亡的线程访问此对象,包括可能的操作通过准备完成的其他对象或类别,此时该对象可能被丢弃。

对于任何给定的对象, finalize方法永远不会由Java虚拟机多次调用。

finalize方法抛出的任何异常 finalize导致此对象的终止被暂停,但会被忽略。

Throws
Throwable

Hooray!