System.Diagnostics.ProcessManager.CreateProcessInfo C# (CSharp) Method

CreateProcessInfo() static private method

Creates a ProcessInfo from the specified process ID.
static private CreateProcessInfo ( int pid, System.Text.ReusableTextReader reusableReader = null ) : ProcessInfo
pid int
reusableReader System.Text.ReusableTextReader
return ProcessInfo
        internal static ProcessInfo CreateProcessInfo(int pid, ReusableTextReader reusableReader = null)
        {
            if (reusableReader == null)
            {
                reusableReader = new ReusableTextReader();
            }

            Interop.procfs.ParsedStat stat;
            return Interop.procfs.TryReadStatFile(pid, out stat, reusableReader) ?
                CreateProcessInfo(stat, reusableReader) :
                null;
        }

Same methods

ProcessManager::CreateProcessInfo ( Interop procFsStat, System.Text.ReusableTextReader reusableReader ) : ProcessInfo
ProcessManager::CreateProcessInfo ( int pid ) : ProcessInfo

Usage Example

Esempio n. 1
0
        public static Process[] GetProcessesByName(string?processName, string machineName)
        {
            ProcessManager.ThrowIfRemoteMachine(machineName);

            int[] procIds   = ProcessManager.GetProcessIds();
            var   processes = new ArrayBuilder <Process>(string.IsNullOrEmpty(processName) ? procIds.Length : 0);

            // Iterate through all process IDs to load information about each process
            foreach (int pid in procIds)
            {
                ProcessInfo?processInfo = ProcessManager.CreateProcessInfo(pid, processName);
                if (processInfo != null)
                {
                    processes.Add(new Process(machineName, isRemoteMachine: false, pid, processInfo));
                }
            }

            return(processes.ToArray());
        }
All Usage Examples Of System.Diagnostics.ProcessManager::CreateProcessInfo