İşlemUtil
public
final
class
ProcessUtil
extends Object
Java.lang.Nesne
|
🎃 |
com.android.sts.common.ProcessUtil
|
Cihazdaki işlemleri bulmak, beklemek ve sonlandırmak için çeşitli yardımcılar
Özet
Herkese açık yöntemler |
static
Optional<IFileEntry>
|
findFileLoadedByProcess(ITestDevice device, String process, String filenameSubstr)
Belirtilen işlem tarafından yüklenen ve belirtilen ada sahip ilk dosyanın dosya girişini döndürür
|
static
Optional<List<String>>
|
findFilesLoadedByProcess(ITestDevice device, int pid, Pattern filePattern)
Belirtilen işlem tarafından yüklenen, belirtilen dosyanın dosya adlarını döndürür.
|
static
Optional<String>
|
getProcessName(ITestDevice device, int pid)
İçeriği /proc/pid/cmdline konumundan alın.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs, boolean expectExist)
SIGKILL öğesini belirli bir kalıpla eşleşen tüm işlemlere gönder.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs)
SIGKILL öğesini belirli bir kalıpla eşleşen tüm işlemlere gönder.
|
static
void
|
killPid(ITestDevice device, int pid, long timeoutMs)
SIGKILL öğesini bir işleme gönderin ve işlemden çıkılmasını bekleyin.
|
static
void
|
killPid(ITestDevice device, int pid, int signal, long timeoutMs)
Bir işleme sinyal gönderin ve işlemden çıkılmasını bekleyin.
|
static
Optional<List<String>>
|
listOpenFiles(ITestDevice device, int pid)
Belirtilen işlemin o anda açık olan dosya adlarını döndürür.
|
static
Optional<Integer>
|
pidOf(ITestDevice device, String pgrepRegex)
"pgrep"e geçirilen kalıpla eşleşen tek bir pid alın.
|
static
Optional<Map<Integer, String>>
|
pidsOf(ITestDevice device, String pgrepRegex)
"pgrep"e geçirilen bir kalıpla eşleşen Pgrep'leri alın.
|
static
void
|
waitPidExited(ITestDevice device, int pid)
Bir işlemden çıkılmasını bekleyin.
|
static
void
|
waitPidExited(ITestDevice device, int pid, long timeoutMs)
Bir işlemden çıkılmasını bekleyin.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex, long timeoutMs)
Belirli bir normal ifade için çalışan bir işlem bulunana kadar bekleyin.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex)
Belirli bir normal ifade için çalışan bir işlem bulunana kadar bekleyin.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill, long timeoutMs)
Testin başında ve sonunda bir işlemi sonlandırın.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill)
Testin başında ve sonunda bir işlemi sonlandırın.
|
Sabitler
İŞLEME_POLL_PERIOD_MS
public static final long PROCESS_POLL_PERIOD_MS
Sabit Değer:
250
(0x00000000000000fa)
İŞLEM_WAIT_TIMEOUT_MS
public static final long PROCESS_WAIT_TIMEOUT_MS
Sabit Değer:
10.000
(0x0000000000002710)
Herkese açık yöntemler
findFileLoadedByProcess
public static Optional<IFileEntry> findFileLoadedByProcess (ITestDevice device,
String process,
String filenameSubstr)
Belirtilen işlem tarafından yüklenen ve belirtilen ada sahip ilk dosyanın dosya girişini döndürür
Parametreler |
device |
ITestDevice : çalıştırılacak cihaz |
process |
String : aranacak işlemin pgrep kalıbı |
filenameSubstr |
String : işlem tarafından yüklenen dosya adının/yolunun bir bölümü |
İlerlemeler |
Optional<IFileEntry> |
Varsa cihazdaki dosyanın yolunun IFileEntry bilgisi.
|
Fırlatma |
DeviceNotAvailableException |
|
findFilesLoadedByProcess
public static Optional<List<String>> findFilesLoadedByProcess (ITestDevice device,
int pid,
Pattern filePattern)
Belirtilen işlem tarafından yüklenen, belirtilen dosyanın dosya adlarını döndürür.
Parametreler |
device |
ITestDevice : çalıştırılacak cihaz |
pid |
int : arama işleminin kimliği |
filePattern |
Pattern : Döndürülecek dosya adlarının kalıbı |
İlerlemeler |
Optional<List<String>> |
Filtrelenmiş dosyalar için İsteğe bağlı bir seçenek; işlem bulunmadıysa veya dosya açıksa boş
dosya okunamadı.
|
Fırlatma |
DeviceNotAvailableException |
|
getProcessAdı
public static Optional<String> getProcessName (ITestDevice device,
int pid)
İçeriği /proc/pid/cmdline konumundan alın.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pid |
int : adını alma işleminin kimliği |
İlerlemeler |
Optional<String> |
/proc/pid/cmdline içeriği için İsteğe Bağlı Bir Dize; pid
bulunabilir
|
Fırlatma |
DeviceNotAvailableException |
|
öldürTümünü
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs,
boolean expectExist)
SIGKILL öğesini belirli bir kalıpla eşleşen tüm işlemlere gönder.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep normal ifadesini temsil eden bir dize |
timeoutMs |
long : AliasException hatası vermeden önce ne kadar süre beklenilir? |
expectExist |
boolean : Hiçbir işlem sonlandırılmadığında bir istisnanın atılıp atılmayacağı |
İlerlemeler |
boolean |
herhangi bir işlemin sonlandırılıp sonlandırılmadığı
|
öldürTümünü
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs)
SIGKILL öğesini belirli bir kalıpla eşleşen tüm işlemlere gönder.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep normal ifadesini temsil eden bir dize |
timeoutMs |
long : AliasException hatası vermeden önce ne kadar süre beklenilir? |
İlerlemeler |
boolean |
herhangi bir işlemin sonlandırılıp sonlandırılmadığı
|
KillPid
public static void killPid (ITestDevice device,
int pid,
long timeoutMs)
SIGKILL öğesini bir işleme gönderin ve işlemden çıkılmasını bekleyin.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pid |
int : Çıkış yapılana kadar beklenecek işlemin kimliği |
timeoutMs |
long : AliasException hatası vermeden önce ne kadar süre beklenilir?
|
KillPid
public static void killPid (ITestDevice device,
int pid,
int signal,
long timeoutMs)
Bir işleme sinyal gönderin ve işlemden çıkılmasını bekleyin.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pid |
int : Çıkış yapılana kadar beklenecek işlemin kimliği |
signal |
int : işleme gönderilecek sinyal |
timeoutMs |
long : AliasException hatası vermeden önce ne kadar süre beklenilir?
|
listOpenFiles
public static Optional<List<String>> listOpenFiles (ITestDevice device,
int pid)
Belirtilen işlemin o anda açık olan dosya adlarını döndürür.
Parametreler |
device |
ITestDevice : çalıştırılacak cihaz |
pid |
int : arama işleminin kimliği |
İlerlemeler |
Optional<List<String>> |
Açık dosyalar için İsteğe bağlı; İşlem bulunmadıysa veya açık dosyalar boşsa
okunamadı.
|
Fırlatma |
DeviceNotAvailableException |
|
pidOf
public static Optional<Integer> pidOf (ITestDevice device,
String pgrepRegex)
"pgrep"e geçirilen kalıpla eşleşen tek bir pid alın. Kalıbla eşleşen birden fazla PID olduğunda IllegalArgumentException
atın.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep normal ifadesini temsil eden bir dize |
İlerlemeler |
Optional<Integer> |
pid'in İsteğe Bağlı Tam Sayısı; pgrep, Çıkış_BAŞARILI sonucu döndürmediyse boş
|
Fırlatma |
DeviceNotAvailableException |
|
IllegalArgumentException |
|
pds
public static Optional<Map<Integer, String>> pidsOf (ITestDevice device,
String pgrepRegex)
"pgrep"e geçirilen bir kalıpla eşleşen p'leri alın. /proc/pid/comm kısaltıldığından,
"pgrep", tam komut satırının kontrol edilmesi için "-f" ile iletilir.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep normal ifadesini temsil eden bir dize |
İlerlemeler |
Optional<Map<Integer, String>> |
İsteğe bağlı pid'den komut satırına eşleme; pgrep, Çıkış_BAŞARILI sonucu döndürmediyse boş
|
Fırlatma |
DeviceNotAvailableException |
|
WaitPidÇıkıldı
public static void waitPidExited (ITestDevice device,
int pid)
Bir işlemden çıkılmasını bekleyin. Bu, değişikliğin yapılmasını beklemek değil,
var olmamıştır. Bir Pid'in anketler arasında tekrar kullanılması mümkün olsa da düşük bir ihtimaldir
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pid |
int : Çıkış yapılana kadar beklenecek işlemin kimliği
|
WaitPidÇıkıldı
public static void waitPidExited (ITestDevice device,
int pid,
long timeoutMs)
Bir işlemden çıkılmasını bekleyin. Bu, değişikliğin yapılmasını beklemek değil,
var olmamıştır. Bir Pid'in anketler arasında tekrar kullanılması mümkün olsa da düşük bir ihtimaldir
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pid |
int : Çıkış yapılana kadar beklenecek işlemin kimliği |
timeoutMs |
long : AliasException hatası vermeden önce ne kadar süre beklenilir?
|
WaitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex,
long timeoutMs)
Belirli bir normal ifade için çalışan bir işlem bulunana kadar bekleyin.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep normal ifadesini temsil eden bir dize |
timeoutMs |
long : AliasException hatası vermeden önce ne kadar süre beklenilir? |
İlerlemeler |
Map<Integer, String> |
pidsOf(...) öğesinden komut eşleme pid'si
|
Fırlatma |
TimeoutException |
|
DeviceNotAvailableException |
|
WaitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex)
Belirli bir normal ifade için çalışan bir işlem bulunana kadar bekleyin.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep normal ifadesini temsil eden bir dize |
İlerlemeler |
Map<Integer, String> |
pidsOf(...) öğesinden komut eşleme pid'si
|
Fırlatma |
TimeoutException |
|
DeviceNotAvailableException |
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill,
long timeoutMs)
Testin başında ve sonunda bir işlemi sonlandırın.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep'e vermek için sonlandırılacak işlemin ad kalıbı |
beforeCloseKill |
Runnable : sondaki çalıştırmadan önce temizlenmesi gereken tüm işlemler için çalıştırılabilir
olması gerekir. Boş olabilir. |
timeoutMs |
long : işlemin sonlandırılması için beklenecek milisaniye cinsinden süre |
İlerlemeler |
AutoCloseable |
Kapatıldığında işlemi tekrar sonlandıracak bir nesne
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill)
Testin başında ve sonunda bir işlemi sonlandırın.
Parametreler |
device |
ITestDevice : kullanılacak cihaz |
pgrepRegex |
String : pgrep'e vermek için sonlandırılacak işlemin ad kalıbı |
beforeCloseKill |
Runnable : sondaki çalıştırmadan önce temizlenmesi gereken tüm işlemler için çalıştırılabilir
olması gerekir. Boş olabilir. |
İlerlemeler |
AutoCloseable |
Kapatıldığında işlemi tekrar sonlandıracak bir nesne
|