Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る
このページは Cloud Translation API によって翻訳されました。
Switch to English

ConsoleReaderOutputStream

public class ConsoleReaderOutputStream
extends Object

java.lang.Object
com.android.tradefed.log.ConsoleReaderOutputStream


System.out.print()ユーザーのConsoleReaderバッファーとConsoleReaderさせるために使用できるOutputStream。

ささいなパフォーマンステストでは、このクラスは測定可能なパフォーマンスへの影響はありませんでした。

概要

パブリックコンストラクター

ConsoleReaderOutputStream (ConsoleReader reader)

パブリックメソッド

void flush ()

ConsoleReader getConsoleReader ()

内部で使用しているConsoleReaderインスタンスを取得します

void setAsyncMode ()

非同期モードを設定します。

void setSyncMode ()

同期モードを設定します。

void write (byte[] b, int off, int len)

非同期タスクがstdoutに書き込むときに、ユーザーのコマンドバッファーを表示し続けるための特別な実装。

void write (int b)

パブリックコンストラクター

ConsoleReaderOutputStream

public ConsoleReaderOutputStream (ConsoleReader reader)

パラメーター
reader ConsoleReader

パブリックメソッド

流す

public void flush ()

getConsoleReader

public ConsoleReader getConsoleReader ()

内部で使用しているConsoleReaderインスタンスを取得します

戻り値
ConsoleReader

setAsyncMode

public void setAsyncMode ()

非同期モードを設定します。これは、コマンドプロンプトを表示し、ユーザー入力の待機を開始した直後に発生します。このモードでは、画面の最新の行がコマンドプロンプトであることが保証されます。特に、非同期タスクは画面への印刷を試みる場合があり、その場合はプロンプトをシャッフルします。

setSyncMode

public void setSyncMode ()

同期モードを設定します。これは、ユーザーが何らかのアクションを実行した後に発生します。たとえば、画面の最新の行がコマンドプロンプトではないことが保証されます。この場合、プロンプトシャッフル動作を無効にします(画面の最新の行がプロンプトである必要があります)

書く

public void write (byte[] b, 
                int off, 
                int len)

非同期タスクがstdoutに書き込むときに、ユーザーのコマンドバッファーを表示したままにする特別な実装。

フルライン書き込み(「\ n」で終了する書き込み)が検出された場合、次のようにします。

  1. 現在の行をクリアします(プロンプトとユーザーのバッファーが含まれます)
  2. 完全な行を印刷すると、新しい行にドロップされます
  3. プロンプトとユーザーのバッファを再描画します

そうすることで、非同期でログに記録された出力をスキップすることはありませんが、プロンプトとユーザーのバッファーを画面の最後の項目として保持します。

FIXME:おそらく出力をバッファリングし、コンソールにフルラインのみを書き込む必要があります。

パラメーター
b byte

off int

len int

書く

public void write (int b)

パラメーター
b int