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