Class WindowsOSProcessJNA

java.lang.Object
oshi.software.common.AbstractOSProcess
oshi.software.common.os.windows.WindowsOSProcess
oshi.software.os.windows.WindowsOSProcessJNA
All Implemented Interfaces:
oshi.software.os.OSProcess

@ThreadSafe public class WindowsOSProcessJNA extends oshi.software.common.os.windows.WindowsOSProcess
JNA-based Windows OS process implementation.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface oshi.software.os.OSProcess

    oshi.software.os.OSProcess.State
  • Field Summary

    Fields inherited from class oshi.software.common.os.windows.WindowsOSProcess

    MAX_WINDOWS_HANDLES, USE_BATCH_COMMANDLINE, USE_PROCSTATE_SUSPENDED
  • Constructor Summary

    Constructors
    Constructor
    Description
    WindowsOSProcessJNA(int pid, WindowsOperatingSystemJNA os, Map<Integer, oshi.driver.common.windows.registry.ProcessPerfCounterBlock> processMap, Map<Integer, oshi.driver.common.windows.registry.WtsInfo> processWtsMap, Map<Integer, oshi.driver.common.windows.registry.ThreadPerfCounterBlock> threadMap)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected oshi.software.os.OSThread
    createOSThread(int pid, int tid, String procName, oshi.driver.common.windows.registry.ThreadPerfCounterBlock pcb)
     
    long
     
    protected List<String>
     
    protected String
     
    protected oshi.util.tuples.Triplet<String, String, Map<String,String>>
     
    protected oshi.util.tuples.Pair<String,String>
     
    protected Map<Integer, oshi.driver.common.windows.registry.ThreadPerfCounterBlock>
     
    protected oshi.util.tuples.Pair<String,String>
     
    boolean
     
    protected boolean
    updateAttributes(oshi.driver.common.windows.registry.ProcessPerfCounterBlock pcb, oshi.driver.common.windows.registry.WtsInfo wts)
     

    Methods inherited from class oshi.software.common.os.windows.WindowsOSProcess

    defaultCwdCommandlineEnvironment, defaultPair, getArguments, getBitness, getBytesRead, getBytesWritten, getCommandLine, getCurrentWorkingDirectory, getCwdCmdEnv, getEnvironmentVariables, getGroup, getGroupID, getHardOpenFileLimit, getKernelTime, getMinorFaults, getName, getOpenFiles, getOs, getParentProcessID, getPath, getPriority, getPrivateResidentMemory, getResidentMemory, getResidentSetSize, getSoftOpenFileLimit, getStartTime, getState, getThreadCount, getThreadDetails, getUpTime, getUser, getUserID, getUserTime, getVirtualSize, setBitness, setName, setPath, setState, setTcb

    Methods inherited from class oshi.software.common.AbstractOSProcess

    getProcessCpuLoadBetweenTicks, getProcessCpuLoadCumulative, getProcessID, toString

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface oshi.software.os.OSProcess

    getContextSwitches, getMajorFaults
  • Constructor Details

    • WindowsOSProcessJNA

      public WindowsOSProcessJNA(int pid, WindowsOperatingSystemJNA os, Map<Integer, oshi.driver.common.windows.registry.ProcessPerfCounterBlock> processMap, Map<Integer, oshi.driver.common.windows.registry.WtsInfo> processWtsMap, Map<Integer, oshi.driver.common.windows.registry.ThreadPerfCounterBlock> threadMap)
  • Method Details

    • getAffinityMask

      public long getAffinityMask()
    • updateAttributes

      public boolean updateAttributes()
    • updateAttributes

      protected boolean updateAttributes(oshi.driver.common.windows.registry.ProcessPerfCounterBlock pcb, oshi.driver.common.windows.registry.WtsInfo wts)
      Overrides:
      updateAttributes in class oshi.software.common.os.windows.WindowsOSProcess
    • createOSThread

      protected oshi.software.os.OSThread createOSThread(int pid, int tid, String procName, oshi.driver.common.windows.registry.ThreadPerfCounterBlock pcb)
      Specified by:
      createOSThread in class oshi.software.common.os.windows.WindowsOSProcess
    • queryMatchingThreads

      protected Map<Integer, oshi.driver.common.windows.registry.ThreadPerfCounterBlock> queryMatchingThreads(Set<Integer> pids)
      Specified by:
      queryMatchingThreads in class oshi.software.common.os.windows.WindowsOSProcess
    • queryCommandLine

      protected String queryCommandLine()
      Specified by:
      queryCommandLine in class oshi.software.common.os.windows.WindowsOSProcess
    • queryArguments

      protected List<String> queryArguments()
      Specified by:
      queryArguments in class oshi.software.common.os.windows.WindowsOSProcess
    • queryUserInfo

      protected oshi.util.tuples.Pair<String,String> queryUserInfo()
      Specified by:
      queryUserInfo in class oshi.software.common.os.windows.WindowsOSProcess
    • queryGroupInfo

      protected oshi.util.tuples.Pair<String,String> queryGroupInfo()
      Specified by:
      queryGroupInfo in class oshi.software.common.os.windows.WindowsOSProcess
    • queryCwdCommandlineEnvironment

      protected oshi.util.tuples.Triplet<String, String, Map<String,String>> queryCwdCommandlineEnvironment()
      Specified by:
      queryCwdCommandlineEnvironment in class oshi.software.common.os.windows.WindowsOSProcess