Procesy

public final class ProcessUtil
extends Object

java.lang.Object
com.android.sts.common.ProcessUtil,


Różni pomocnicy mogą znajdować, czekać i zamykać procesy na urządzeniu

Podsumowanie

Zagnieżdżone klasy

class ProcessUtil.KillException

 

Stałe

long PROCESS_POLL_PERIOD_MS

long PROCESS_WAIT_TIMEOUT_MS

Metody publiczne

static Optional<IFileEntry> findFileLoadedByProcess(ITestDevice device, String process, String filenameSubstr)

Zwraca wpis pierwszego pliku wczytanego przez określony proces o podanej nazwie

static Optional<List<String>> findFilesLoadedByProcess(ITestDevice device, int pid, Pattern filePattern)

Zwraca nazwy plików określonego pliku wczytane przez określony proces.

static Optional<String> getProcessName(ITestDevice device, int pid)

Pobierz zawartość z /proc/pid/cmdline.

static boolean killAll(ITestDevice device, String pgrepRegex, long timeoutMs, boolean expectExist)

Wyślij SIGKILL do wszystkich procesów pasujących do wzorca.

static boolean killAll(ITestDevice device, String pgrepRegex, long timeoutMs)

Wyślij SIGKILL do wszystkich procesów pasujących do wzorca.

static void killPid(ITestDevice device, int pid, long timeoutMs)

Wyślij SIGKILL do procesu i poczekaj na jego zamknięcie.

static void killPid(ITestDevice device, int pid, int signal, long timeoutMs)

Wyślij sygnał do procesu i poczekaj, aż zniknie.

static Optional<List<String>> listOpenFiles(ITestDevice device, int pid)

Zwraca obecnie otwarte nazwy plików określonego procesu.

static Optional<Integer> pidOf(ITestDevice device, String pgrepRegex)

Pobierz jeden pid pasujący do wzorca przekazywanego do „pgrep”.

static Optional<Map<Integer, String>> pidsOf(ITestDevice device, String pgrepRegex)

Pobierz identyfikatory PID pasujące do wzorca przekazywanego do „pgrep”.

static void waitPidExited(ITestDevice device, int pid)

Poczekaj na zakończenie procesu.

static void waitPidExited(ITestDevice device, int pid, long timeoutMs)

Poczekaj na zakończenie procesu.

static Map<Integer, String> waitProcessRunning(ITestDevice device, String pgrepRegex, long timeoutMs)

Poczekaj, aż dla danego wyrażenia regularnego znajdzie się uruchomiony proces.

static Map<Integer, String> waitProcessRunning(ITestDevice device, String pgrepRegex)

Poczekaj, aż dla danego wyrażenia regularnego znajdzie się uruchomiony proces.

static AutoCloseable withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill, long timeoutMs)

Zakończ proces na początku i na końcu testu.

static AutoCloseable withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill)

Zakończ proces na początku i na końcu testu.

Stałe

PROCES_POLL_PERIOD_MS

public static final long PROCESS_POLL_PERIOD_MS

Wartość stała: 250 (0x00000000000000fa)

PROCESS_WAIT_TIMEOUT_MS

public static final long PROCESS_WAIT_TIMEOUT_MS

Wartość stała: 10000 (0x0000000000002710)

Metody publiczne

findFileLoadedByProcess

public static Optional<IFileEntry> findFileLoadedByProcess (ITestDevice device, 
                String process, 
                String filenameSubstr)

Zwraca wpis pierwszego pliku wczytanego przez określony proces o podanej nazwie

Parametry
device ITestDevice: urządzenie, na którym zostanie uruchomione

process String: wzorzec pgrep procesu do wyszukania

filenameSubstr String: część nazwy lub ścieżki pliku wczytanej przez proces

Zwroty
Optional<IFileEntry> wartość w polu IFileEntry, która odnosi się do ścieżki pliku na urządzeniu, jeśli istnieje.

Rzuty
DeviceNotAvailableException

findFilesLoadedByProcess (znajdźFilesLoadedByProcess)

public static Optional<List<String>> findFilesLoadedByProcess (ITestDevice device, 
                int pid, 
                Pattern filePattern)

Zwraca nazwy plików określonego pliku wczytane przez określony proces.

Parametry
device ITestDevice: urządzenie, na którym zostanie uruchomione

pid int: identyfikator procesu do wyszukania

filePattern Pattern: wzorzec nazw plików do zwrócenia,

Zwroty
Optional<List<String>> element opcjonalny odfiltrowanych plików; jeśli proces nie został znaleziony, lub otwarty jest Nie udało się odczytać plików.

Rzuty
DeviceNotAvailableException

GetProcessName

public static Optional<String> getProcessName (ITestDevice device, 
                int pid)

Pobierz zawartość z /proc/pid/cmdline.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pid int: identyfikator procesu, dla którego chcesz uzyskać nazwę

Zwroty
Optional<String> opcjonalny ciąg znaków z wartością /proc/pid/cmdline; puste, jeśli pid nie może daj się znaleźć

Rzuty
DeviceNotAvailableException

zabij wszystko

public static boolean killAll (ITestDevice device, 
                String pgrepRegex, 
                long timeoutMs, 
                boolean expectExist)

Wyślij SIGKILL do wszystkich procesów pasujących do wzorca.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: ciąg znaków reprezentujący wyrażenie regularne dla polecenia pgrep

timeoutMs long: czas oczekiwania przed zgłoszeniem wyjątku TimeoutException.

expectExist boolean: określa, czy należy zgłosić wyjątek, jeśli nie zostało przerwane żadne procesy

Zwroty
boolean czy zostały przerwane procesy

Rzuty
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

zabij wszystko

public static boolean killAll (ITestDevice device, 
                String pgrepRegex, 
                long timeoutMs)

Wyślij SIGKILL do wszystkich procesów pasujących do wzorca.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: ciąg znaków reprezentujący wyrażenie regularne dla polecenia pgrep

timeoutMs long: czas oczekiwania przed zgłoszeniem wyjątku TimeoutException.

Zwroty
boolean czy zostały przerwane procesy

Rzuty
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

KillPid

public static void killPid (ITestDevice device, 
                int pid, 
                long timeoutMs)

Wyślij SIGKILL do procesu i poczekaj na jego zamknięcie.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pid int: identyfikator procesu oczekiwania na zakończenie.

timeoutMs long: czas oczekiwania przed zgłoszeniem wyjątku TimeoutException.

Rzuty
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

KillPid

public static void killPid (ITestDevice device, 
                int pid, 
                int signal, 
                long timeoutMs)

Wyślij sygnał do procesu i poczekaj, aż zniknie.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pid int: identyfikator procesu oczekiwania na zakończenie.

signal int: sygnał do wysłania do procesu.

timeoutMs long: czas oczekiwania przed zgłoszeniem wyjątku TimeoutException.

Rzuty
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

listaOpenFiles (ListyOpenFiles)

public static Optional<List<String>> listOpenFiles (ITestDevice device, 
                int pid)

Zwraca obecnie otwarte nazwy plików określonego procesu.

Parametry
device ITestDevice: urządzenie, na którym zostanie uruchomione

pid int: identyfikator procesu do wyszukania

Zwroty
Optional<List<String>> element opcjonalny z otwartych plików; puste, jeśli nie udało się znaleźć procesu lub otwarte pliki nie udało się odczytać.

Rzuty
DeviceNotAvailableException

pidOf

public static Optional<Integer> pidOf (ITestDevice device, 
                String pgrepRegex)

Pobierz jeden pid pasujący do wzorca przekazywanego do „pgrep”. Zgłaszaj IllegalArgumentException, gdy do wzorca pasuje więcej niż jeden identyfikator PID.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: ciąg znaków reprezentujący wyrażenie regularne dla polecenia pgrep

Zwroty
Optional<Integer> opcjonalna liczba całkowita liczby pid; puste, jeśli polecenie pgrep nie zwróciło Exit_success

Rzuty
DeviceNotAvailableException
IllegalArgumentException

pidsOf

public static Optional<Map<Integer, String>> pidsOf (ITestDevice device, 
                String pgrepRegex)

Pobierz identyfikatory PID pasujące do wzorca przekazywanego do „pgrep”. Ponieważ plik /proc/pid/comm jest obcięty, Metoda „pgrep” jest przekazywana z argumentem „-f”, aby sprawdzić pełny wiersz poleceń.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: ciąg znaków reprezentujący wyrażenie regularne dla polecenia pgrep

Zwroty
Optional<Map<Integer, String>> opcjonalną mapę pid do wiersza poleceń; puste, jeśli polecenie pgrep nie zwróciło Exit_success

Rzuty
DeviceNotAvailableException

Oczekiwanie na zakończenie

public static void waitPidExited (ITestDevice device, 
                int pid)

Poczekaj na zakończenie procesu. Nie czekamy, aż się zmieni, nie istnieje. Jest możliwe, ale mało prawdopodobne, aby pid mógł zostać użyty ponownie w ankietach

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pid int: identyfikator procesu oczekiwania na zakończenie.

Rzuty
TimeoutException
DeviceNotAvailableException
ProcessUtil.KillException

Oczekiwanie na zakończenie

public static void waitPidExited (ITestDevice device, 
                int pid, 
                long timeoutMs)

Poczekaj na zakończenie procesu. Nie czekamy, aż się zmieni, nie istnieje. Jest możliwe, ale mało prawdopodobne, aby pid mógł zostać użyty ponownie w ankietach

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pid int: identyfikator procesu oczekiwania na zakończenie.

timeoutMs long: czas oczekiwania przed zgłoszeniem wyjątku TimeoutException.

Rzuty
TimeoutException
DeviceNotAvailableException
ProcessUtil.KillException

Oczekiwanie na działanie procesu

public static Map<Integer, String> waitProcessRunning (ITestDevice device, 
                String pgrepRegex, 
                long timeoutMs)

Poczekaj, aż dla danego wyrażenia regularnego znajdzie się uruchomiony proces.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: ciąg znaków reprezentujący wyrażenie regularne dla polecenia pgrep

timeoutMs long: czas oczekiwania przed zgłoszeniem wyjątku TimeoutException.

Zwroty
Map<Integer, String> pid do polecenia mapy z pidsOf(...)

Rzuty
TimeoutException
DeviceNotAvailableException

Oczekiwanie na działanie procesu

public static Map<Integer, String> waitProcessRunning (ITestDevice device, 
                String pgrepRegex)

Poczekaj, aż dla danego wyrażenia regularnego znajdzie się uruchomiony proces.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: ciąg znaków reprezentujący wyrażenie regularne dla polecenia pgrep

Zwroty
Map<Integer, String> pid do polecenia mapy z pidsOf(...)

Rzuty
TimeoutException
DeviceNotAvailableException

Za pomocąProcessKill

public static AutoCloseable withProcessKill (ITestDevice device, 
                String pgrepRegex, 
                Runnable beforeCloseKill, 
                long timeoutMs)

Zakończ proces na początku i na końcu testu.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: wzorzec nazwy procesu, który ma zostać zabity dla pgrep

beforeCloseKill Runnable: umożliwia wykonanie wszystkich działań, które trzeba usunąć przed zamknięciem w normalnym środowisku po zakończeniu testu. Może mieć wartość null.

timeoutMs long: czas oczekiwania na zakończenie procesu (w milisekundach).

Zwroty
AutoCloseable Obiekt, który ponownie zakończy proces po jego zamknięciu

Rzuty
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

Za pomocąProcessKill

public static AutoCloseable withProcessKill (ITestDevice device, 
                String pgrepRegex, 
                Runnable beforeCloseKill)

Zakończ proces na początku i na końcu testu.

Parametry
device ITestDevice: urządzenie, którego chcesz używać

pgrepRegex String: wzorzec nazwy procesu, który ma zostać zabity dla pgrep

beforeCloseKill Runnable: umożliwia wykonanie wszystkich działań, które trzeba usunąć przed zamknięciem w normalnym środowisku po zakończeniu testu. Może mieć wartość null.

Zwroty
AutoCloseable Obiekt, który ponownie zakończy proces po jego zamknięciu

Rzuty
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException