{i>ProcessUtil<i}
public
final
class
ProcessUtil
extends Object
java.lang.Object
|
↳ |
{i>com.android.sts.common.ProcessUtil<i}
|
Berbagai helper untuk menemukan, menunggu, dan menghentikan proses di perangkat
Ringkasan
Metode publik |
static
Optional<IFileEntry>
|
findFileLoadedByProcess(ITestDevice device, String process, String filenameSubstr)
Menampilkan entri file dari file pertama yang dimuat oleh proses tertentu dengan nama tertentu
|
static
Optional<List<String>>
|
findFilesLoadedByProcess(ITestDevice device, int pid, Pattern filePattern)
Menampilkan nama file dari file tertentu, yang dimuat oleh proses tertentu.
|
static
Optional<String>
|
getProcessName(ITestDevice device, int pid)
Dapatkan konten dari {i> /proc/pid/cmdline<i}.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs, boolean expectExist)
Mengirim SIGKILL ke semua proses yang cocok dengan suatu pola.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs)
Mengirim SIGKILL ke semua proses yang cocok dengan suatu pola.
|
static
void
|
killPid(ITestDevice device, int pid, long timeoutMs)
Mengirim SIGKILL ke proses dan menunggu hingga SIGKILL dikeluarkan.
|
static
void
|
killPid(ITestDevice device, int pid, int signal, long timeoutMs)
Mengirim sinyal ke proses dan menunggu hingga sinyal keluar.
|
static
Optional<List<String>>
|
listOpenFiles(ITestDevice device, int pid)
Menampilkan nama file yang saat ini terbuka dari proses yang ditentukan.
|
static
Optional<Integer>
|
pidOf(ITestDevice device, String pgrepRegex)
Dapatkan satu pid yang cocok dengan pola yang diteruskan ke `pgrep`.
|
static
Optional<Map<Integer, String>>
|
pidsOf(ITestDevice device, String pgrepRegex)
Dapatkan pid yang cocok dengan pola yang diteruskan ke `pgrep`.
|
static
void
|
waitPidExited(ITestDevice device, int pid)
Tunggu hingga proses diselesaikan.
|
static
void
|
waitPidExited(ITestDevice device, int pid, long timeoutMs)
Tunggu hingga proses diselesaikan.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex, long timeoutMs)
Tunggu hingga proses yang berjalan untuk ekspresi reguler tertentu ditemukan.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex)
Tunggu hingga proses yang berjalan untuk ekspresi reguler tertentu ditemukan.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill, long timeoutMs)
Menghentikan proses di awal dan akhir pengujian.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill)
Menghentikan proses di awal dan akhir pengujian.
|
Konstanta
PROSES_POLL_PERIOD_MS
public static final long PROCESS_POLL_PERIOD_MS
Nilai Konstanta:
250
(0x00000000000000fa)
PROSES_WAIT_TIMEOUT_MS
public static final long PROCESS_WAIT_TIMEOUT_MS
Nilai Konstanta:
10.000
(0x0000000000002710)
Metode publik
{i>findFileLoadedByProcess<i}
public static Optional<IFileEntry> findFileLoadedByProcess (ITestDevice device,
String process,
String filenameSubstr)
Menampilkan entri file dari file pertama yang dimuat oleh proses tertentu dengan nama tertentu
Parameter |
device |
ITestDevice : perangkat yang akan dijalankan |
process |
String : pola pgrep proses yang harus dicari |
filenameSubstr |
String : bagian dari nama/jalur file yang dimuat oleh proses |
Hasil |
Optional<IFileEntry> |
Opotional of IFileEntry dari jalur file pada perangkat jika ada.
|
Menampilkan |
DeviceNotAvailableException |
|
{i>findFilesLoadedByProcess<i}
public static Optional<List<String>> findFilesLoadedByProcess (ITestDevice device,
int pid,
Pattern filePattern)
Menampilkan nama file dari file tertentu, yang dimuat oleh proses tertentu.
Parameter |
device |
ITestDevice : perangkat yang akan dijalankan |
pid |
int : ID proses yang akan ditelusuri |
filePattern |
Pattern : pola nama file yang akan ditampilkan |
Hasil |
Optional<List<String>> |
Opsional file yang difilter; kosong jika proses tidak ditemukan,
file tidak dapat dibaca.
|
Menampilkan |
DeviceNotAvailableException |
|
{i>getProcessName<i}
public static Optional<String> getProcessName (ITestDevice device,
int pid)
Dapatkan konten dari {i> /proc/pid/cmdline<i}.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pid |
int : ID proses untuk mendapatkan nama untuk |
Hasil |
Optional<String> |
sebuah String Opsional dari isi {i> /proc/pid/cmdline<i}; kosong jika pid tidak dapat
ditemukan
|
Menampilkan |
DeviceNotAvailableException |
|
{i>killAll<i}
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs,
boolean expectExist)
Mengirim SIGKILL ke semua proses yang cocok dengan suatu pola.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : String yang mewakili ekspresi reguler untuk pgrep |
timeoutMs |
long : lamanya waktu tunggu sebelum menampilkan TimeoutException |
expectExist |
boolean : apakah pengecualian harus ditampilkan saat tidak ada proses yang dihentikan |
Hasil |
boolean |
apakah ada proses yang dimatikan
|
{i>killAll<i}
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs)
Mengirim SIGKILL ke semua proses yang cocok dengan suatu pola.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : String yang mewakili ekspresi reguler untuk pgrep |
timeoutMs |
long : lamanya waktu tunggu sebelum menampilkan TimeoutException |
Hasil |
boolean |
apakah ada proses yang dimatikan
|
{i>killPid<i}
public static void killPid (ITestDevice device,
int pid,
long timeoutMs)
Mengirim SIGKILL ke proses dan menunggu hingga SIGKILL dikeluarkan.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pid |
int : ID proses untuk menunggu hingga ditutup |
timeoutMs |
long : lamanya waktu tunggu sebelum menampilkan TimeoutException
|
{i>killPid<i}
public static void killPid (ITestDevice device,
int pid,
int signal,
long timeoutMs)
Mengirim sinyal ke proses dan menunggu hingga sinyal keluar.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pid |
int : ID proses untuk menunggu hingga ditutup |
signal |
int : sinyal yang akan dikirim ke proses |
timeoutMs |
long : lamanya waktu tunggu sebelum menampilkan TimeoutException
|
daftarBukaFile
public static Optional<List<String>> listOpenFiles (ITestDevice device,
int pid)
Menampilkan nama file yang saat ini terbuka dari proses yang ditentukan.
Parameter |
device |
ITestDevice : perangkat yang akan dijalankan |
pid |
int : ID proses yang akan ditelusuri |
Hasil |
Optional<List<String>> |
Opsional dari file yang terbuka; kosong jika proses tidak ditemukan atau file terbuka
tidak dapat dibaca.
|
Menampilkan |
DeviceNotAvailableException |
|
{i>pidOf<i}
public static Optional<Integer> pidOf (ITestDevice device,
String pgrepRegex)
Dapatkan satu pid yang cocok dengan pola yang diteruskan ke `pgrep`. Tampilkan IllegalArgumentException
jika ada lebih dari satu PID yang cocok dengan pola.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : String yang mewakili ekspresi reguler untuk pgrep |
Hasil |
Optional<Integer> |
Bilangan Bulat Opsional pid; kosong jika pgrep tidak menampilkan KELUAR_SUKSES
|
Menampilkan |
DeviceNotAvailableException |
|
IllegalArgumentException |
|
{i>pidsOf<i}
public static Optional<Map<Integer, String>> pidsOf (ITestDevice device,
String pgrepRegex)
Dapatkan pid yang cocok dengan pola yang diteruskan ke `pgrep`. Karena {i> /proc/pid/comm<i} terpotong,
`pgrep` diteruskan dengan `-f` untuk memeriksa command line secara lengkap.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : String yang mewakili ekspresi reguler untuk pgrep |
Hasil |
Optional<Map<Integer, String>> |
Peta Opsional pid ke command line; kosong jika pgrep tidak menampilkan KELUAR_SUKSES
|
Menampilkan |
DeviceNotAvailableException |
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid)
Tunggu hingga proses diselesaikan. Hal ini tidak menunggunya untuk berubah, tetapi cukup menjadi
tidak ada. Dimungkinkan, tetapi kecil kemungkinannya, pid dapat digunakan kembali di antara polling
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pid |
int : ID proses untuk menunggu hingga ditutup
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid,
long timeoutMs)
Tunggu hingga proses diselesaikan. Hal ini tidak menunggunya untuk berubah, tetapi cukup menjadi
tidak ada. Dimungkinkan, tetapi kecil kemungkinannya, pid dapat digunakan kembali di antara polling
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pid |
int : ID proses untuk menunggu hingga ditutup |
timeoutMs |
long : lamanya waktu tunggu sebelum menampilkan TimeoutException
|
tungguProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex,
long timeoutMs)
Tunggu hingga proses yang berjalan untuk ekspresi reguler tertentu ditemukan.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : String yang mewakili ekspresi reguler untuk pgrep |
timeoutMs |
long : lamanya waktu tunggu sebelum menampilkan TimeoutException |
Hasil |
Map<Integer, String> |
pid ke perintah peta dari pidsOf(...)
|
Menampilkan |
TimeoutException |
|
DeviceNotAvailableException |
|
tungguProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex)
Tunggu hingga proses yang berjalan untuk ekspresi reguler tertentu ditemukan.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : String yang mewakili ekspresi reguler untuk pgrep |
Hasil |
Map<Integer, String> |
pid ke perintah peta dari pidsOf(...)
|
Menampilkan |
TimeoutException |
|
DeviceNotAvailableException |
|
denganProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill,
long timeoutMs)
Menghentikan proses di awal dan akhir pengujian.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : pola nama proses yang akan dihentikan untuk diberikan ke pgrep |
beforeCloseKill |
Runnable : dapat dijalankan untuk tindakan apa pun yang perlu dibersihkan sebelum mematikan
proses dalam lingkungan
normal di akhir pengujian. Bisa null. |
timeoutMs |
long : berapa lama dalam milidetik hingga proses dihentikan |
Hasil |
AutoCloseable |
Objek yang akan mematikan proses lagi ketika ditutup
|
denganProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill)
Menghentikan proses di awal dan akhir pengujian.
Parameter |
device |
ITestDevice : perangkat yang akan digunakan |
pgrepRegex |
String : pola nama proses yang akan dihentikan untuk diberikan ke pgrep |
beforeCloseKill |
Runnable : dapat dijalankan untuk tindakan apa pun yang perlu dibersihkan sebelum mematikan
proses dalam lingkungan
normal di akhir pengujian. Bisa null. |
Hasil |
AutoCloseable |
Objek yang akan mematikan proses lagi ketika ditutup
|