प्रक्रियाउपयोग

public final class ProcessUtil
extends Object

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


डिवाइस पर प्रक्रियाओं को खोजने, प्रतीक्षा करने और समाप्त करने के लिए विभिन्न सहायक

सारांश

नेस्टेड कक्षाएं

class ProcessUtil.KillException

स्थिरांक

long PROCESS_POLL_PERIOD_MS

long PROCESS_WAIT_TIMEOUT_MS

सार्वजनिक तरीके

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

निर्दिष्ट नाम के साथ निर्दिष्ट प्रक्रिया द्वारा लोड की गई पहली फ़ाइल की फ़ाइल प्रविष्टि लौटाता है

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

निर्दिष्ट प्रक्रिया द्वारा लोड की गई निर्दिष्ट फ़ाइल के फ़ाइल नाम लौटाता है।

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

/Proc/pid/cmdline से सामग्री प्राप्त करें।

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

पैटर्न से मेल खाने वाली सभी प्रक्रियाओं को SIGKILL भेजें।

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

पैटर्न से मेल खाने वाली सभी प्रक्रियाओं को SIGKILL भेजें।

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

SIGKILL को एक प्रक्रिया में भेजें और इसके बाहर निकलने की प्रतीक्षा करें।

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

एक प्रक्रिया के लिए एक संकेत भेजें और इसके बाहर निकलने की प्रतीक्षा करें।

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

निर्दिष्ट प्रक्रिया के वर्तमान में खुले फ़ाइल नाम लौटाता है।

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

`pgrep` को पास किए गए पैटर्न से मेल खाता हुआ एक एकल पिड प्राप्त करें।

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

`pgrep` को दिए गए पैटर्न से मेल खाने वाले पिड्स प्राप्त करें।

static void waitPidExited (ITestDevice device, int pid)

किसी प्रक्रिया के बाहर निकलने की प्रतीक्षा करें।

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

किसी प्रक्रिया के बाहर निकलने की प्रतीक्षा करें।

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

किसी दिए गए रेगेक्स के लिए रनिंग प्रोसेस मिलने तक प्रतीक्षा करें।

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

किसी दिए गए रेगेक्स के लिए रनिंग प्रोसेस मिलने तक प्रतीक्षा करें।

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

एक परीक्षण की शुरुआत और अंत में एक प्रक्रिया को मारें।

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

एक परीक्षण की शुरुआत और अंत में एक प्रक्रिया को मारें।

स्थिरांक

PROCESS_POLL_PERIOD_MS

public static final long PROCESS_POLL_PERIOD_MS

स्थिर मान: 250 (0x00000000000000fa)

PROCESS_WAIT_TIMEOUT_MS

public static final long PROCESS_WAIT_TIMEOUT_MS

स्थिर मान: 10000 (0x0000000000002710)

सार्वजनिक तरीके

FindFileLoadedByProcess

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

निर्दिष्ट नाम के साथ निर्दिष्ट प्रक्रिया द्वारा लोड की गई पहली फ़ाइल की फ़ाइल प्रविष्टि लौटाता है

मापदंडों
device ITestDevice : चालू करने के लिए डिवाइस

process String : देखने के लिए प्रक्रिया का pgrep पैटर्न

filenameSubstr String : प्रक्रिया द्वारा लोड किए गए फ़ाइल नाम/पथ का हिस्सा

रिटर्न
Optional<IFileEntry> मौजूद होने पर डिवाइस पर फ़ाइल के पथ के IFileEntry का वैकल्पिक।

फेंकता
DeviceNotAvailableException

FindFilesLoadedByProcess

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

निर्दिष्ट प्रक्रिया द्वारा लोड की गई निर्दिष्ट फ़ाइल के फ़ाइल नाम लौटाता है।

मापदंडों
device ITestDevice : चालू करने के लिए डिवाइस

pid int : खोज की जाने वाली प्रक्रिया की आईडी

filePattern Pattern : वापसी के लिए फ़ाइल नामों का एक पैटर्न

रिटर्न
Optional<List<String>> फ़िल्टर की गई फ़ाइलों का एक वैकल्पिक; अगर प्रक्रिया नहीं मिली या खुली हुई फाइलों को पढ़ा नहीं जा सका तो खाली।

फेंकता
DeviceNotAvailableException

getProcessName

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

/Proc/pid/cmdline से सामग्री प्राप्त करें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pid int : नाम प्राप्त करने के लिए प्रक्रिया की आईडी

रिटर्न
Optional<String> /Proc/pid/cmdline की सामग्री का एक वैकल्पिक स्ट्रिंग; खाली अगर पीआईडी ​​​​नहीं मिला

फेंकता
DeviceNotAvailableException

सबको मार दो

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

पैटर्न से मेल खाने वाली सभी प्रक्रियाओं को SIGKILL भेजें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep के लिए रेगेक्स का प्रतिनिधित्व करने वाला एक स्ट्रिंग

timeoutMs long : टाइमआउट अपवाद को फेंकने से पहले कितनी देर तक प्रतीक्षा करें

expectExist boolean : जब कोई प्रक्रिया नहीं मारी गई थी तो अपवाद को फेंक दिया जाना चाहिए या नहीं

रिटर्न
boolean क्या कोई प्रक्रिया मारी गई थी

फेंकता
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

सबको मार दो

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

पैटर्न से मेल खाने वाली सभी प्रक्रियाओं को SIGKILL भेजें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep के लिए रेगेक्स का प्रतिनिधित्व करने वाला एक स्ट्रिंग

timeoutMs long : टाइमआउट अपवाद को फेंकने से पहले कितनी देर तक प्रतीक्षा करें

रिटर्न
boolean क्या कोई प्रक्रिया मारी गई थी

फेंकता
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

KillPid

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

SIGKILL को एक प्रक्रिया में भेजें और इसके बाहर निकलने की प्रतीक्षा करें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pid int : बाहर निकलने तक प्रतीक्षा करने के लिए प्रक्रिया की आईडी

timeoutMs long : टाइमआउट अपवाद को फेंकने से पहले कितनी देर तक प्रतीक्षा करें

फेंकता
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

KillPid

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

एक प्रक्रिया के लिए एक संकेत भेजें और इसके बाहर निकलने की प्रतीक्षा करें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pid int : बाहर निकलने तक प्रतीक्षा करने के लिए प्रक्रिया की आईडी

signal int : प्रक्रिया को भेजने के लिए संकेत

timeoutMs long : टाइमआउट अपवाद को फेंकने से पहले कितनी देर तक प्रतीक्षा करें

फेंकता
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

listOpenFiles

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

निर्दिष्ट प्रक्रिया के वर्तमान में खुले फ़ाइल नाम लौटाता है।

मापदंडों
device ITestDevice : चालू करने के लिए डिवाइस

pid int : खोज की जाने वाली प्रक्रिया की आईडी

रिटर्न
Optional<List<String>> खुली फाइलों का एक वैकल्पिक; अगर प्रक्रिया नहीं मिली या खुली हुई फाइलों को पढ़ा नहीं जा सका तो खाली।

फेंकता
DeviceNotAvailableException

pidOf

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

`pgrep` को पास किए गए पैटर्न से मेल खाता हुआ एक एकल पिड प्राप्त करें। एक से अधिक पीआईडी ​​​​पैटर्न से मेल खाने पर एक IllegalArgumentException को फेंक दें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep के लिए रेगेक्स का प्रतिनिधित्व करने वाला एक स्ट्रिंग

रिटर्न
Optional<Integer> पिड का एक वैकल्पिक पूर्णांक; खाली अगर pgrep EXIT_SUCCESS वापस नहीं आया

फेंकता
DeviceNotAvailableException
IllegalArgumentException

pidsOf

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

`pgrep` को दिए गए पैटर्न से मेल खाने वाले पिड्स प्राप्त करें। क्योंकि / proc / pid / comm को छोटा कर दिया गया है, पूर्ण कमांड लाइन की जाँच करने के लिए `pgrep` को `-f` के साथ पास किया गया है।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep के लिए रेगेक्स का प्रतिनिधित्व करने वाला एक स्ट्रिंग

रिटर्न
Optional<Map<Integer, String>> कमांड लाइन के लिए पिड का एक वैकल्पिक मानचित्र; खाली अगर pgrep EXIT_SUCCESS वापस नहीं आया

फेंकता
DeviceNotAvailableException

waitPidExited

public static void waitPidExited (ITestDevice device, 
                int pid)

किसी प्रक्रिया के बाहर निकलने की प्रतीक्षा करें। यह इसके बदलने की प्रतीक्षा नहीं कर रहा है, बल्कि बस अस्तित्वहीन है। पोल के बीच पिड का पुन: उपयोग करना संभव है, लेकिन संभावना नहीं है

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pid int : बाहर निकलने तक प्रतीक्षा करने के लिए प्रक्रिया की आईडी

फेंकता
TimeoutException
DeviceNotAvailableException
ProcessUtil.KillException

waitPidExited

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

किसी प्रक्रिया के बाहर निकलने की प्रतीक्षा करें। यह इसके बदलने की प्रतीक्षा नहीं कर रहा है, बल्कि बस अस्तित्वहीन है। पोल के बीच पिड का पुन: उपयोग करना संभव है, लेकिन संभावना नहीं है

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pid int : बाहर निकलने तक प्रतीक्षा करने के लिए प्रक्रिया की आईडी

timeoutMs long : टाइमआउट अपवाद को फेंकने से पहले कितनी देर तक प्रतीक्षा करें

फेंकता
TimeoutException
DeviceNotAvailableException
ProcessUtil.KillException

WaitProcessRunning

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

किसी दिए गए रेगेक्स के लिए रनिंग प्रोसेस मिलने तक प्रतीक्षा करें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep के लिए रेगेक्स का प्रतिनिधित्व करने वाला एक स्ट्रिंग

timeoutMs long : टाइमआउट अपवाद को फेंकने से पहले कितनी देर तक प्रतीक्षा करें

रिटर्न
Map<Integer, String> pidsOf(...) से पिड टू कमांड मैप

फेंकता
TimeoutException
DeviceNotAvailableException

WaitProcessRunning

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

किसी दिए गए रेगेक्स के लिए रनिंग प्रोसेस मिलने तक प्रतीक्षा करें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep के लिए रेगेक्स का प्रतिनिधित्व करने वाला एक स्ट्रिंग

रिटर्न
Map<Integer, String> pidsOf(...) से पिड टू कमांड मैप

फेंकता
TimeoutException
DeviceNotAvailableException

साथProcessKill

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

एक परीक्षण की शुरुआत और अंत में एक प्रक्रिया को मारें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep को मारने के लिए प्रक्रिया का नाम पैटर्न

beforeCloseKill Runnable : परीक्षण के अंत में एक सामान्य वातावरण में प्रक्रिया को मारने से पहले किसी भी क्रिया के लिए रन करने योग्य। शून्य हो सकता है।

timeoutMs long : प्रक्रिया को खत्म करने के लिए मिलीसेकंड में कितनी देर तक प्रतीक्षा करें

रिटर्न
AutoCloseable एक वस्तु जो बंद होने पर प्रक्रिया को फिर से मार देगी

फेंकता
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException

साथProcessKill

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

एक परीक्षण की शुरुआत और अंत में एक प्रक्रिया को मारें।

मापदंडों
device ITestDevice : उपयोग करने के लिए डिवाइस

pgrepRegex String : pgrep को मारने के लिए प्रक्रिया का नाम पैटर्न

beforeCloseKill Runnable : परीक्षण के अंत में एक सामान्य वातावरण में प्रक्रिया को मारने से पहले किसी भी क्रिया के लिए रन करने योग्य। शून्य हो सकता है।

रिटर्न
AutoCloseable एक वस्तु जो बंद होने पर प्रक्रिया को फिर से मार देगी

फेंकता
DeviceNotAvailableException
TimeoutException
ProcessUtil.KillException