function 支持 async
xianyunleo opened this issue · comments
比如这种 getDetailsProcessList 获取列表的方法,同步的话好像会卡死主进程
大概率是系统里面有杀毒软件 或者相关hook了GetModuleBaseName和GetModuleFileName,
我这边测试的时间一般是 30ms左右
,我加个异步吧
getProcessParentProcessID 耗时也在10-30ms,请支持async @kihlh
getProcessParentProcessID 耗时也在10-30ms,请支持async @kihlh
获取主进程的本质还是枚举进程快照,所以会很慢,在1.4.0已经添加了一个选项 可以在第一次调用时候生成缓冲,在第二次调用时候直接从缓冲获取
本来预计10-45ms 会变成0.05ms左右
比如这种 getDetailsProcessList 获取列表的方法,同步的话好像会卡死主进程
此获取进程列表已经细分为四种方式
- 只获取pid
- 获取pid+path+name
- 枚举内核
- 枚举镜像
均支持异步和同步 获取到的信息也更精细,速度也不一样
-
尾部带有2的为2.0版 api 支持了新功能
- 异步
Promise
- 异步
callback
- 同步
Promise
/ - 均支持并发
- 异步
-
findProcess2 搜索进程
异步
-
findProcess2Sync 搜索进程
同步
-
getAllProcessList2
异步
获取进程列表(枚举) 枚举是最快的也不受应用是32位系统64位导致无法枚举到 但是信息不够细- pid 进程id
- name 由镜像路径解析
- path 镜像路径
-
getAllProcessList2Sync
同步
获取进程列表(枚举) -
getAllProcessList2Snp
异步
获取进程列表 (快照) 请注意 如果可执行文件是32位而系统是64位将获取不到64位进程的信息- pid 进程id
- name 由镜像路径解析
- ppid 父进程id
- ... : cntThreads cntUsage dwFlags dwSize pcPriClassBase th32DefaultHeapID th32ModuleID
getAllProcessListSnp2Sync
同步
获取进程列表 (快照) -
getAllProcessListNt2
异步
获取进程列表 (内核)- pid 进程id
- name 软件名称
- BasePriority NextEntryOffset NumberOfThreads PagefileUsage pcPriClassBase PeakPagefileUsage PeakWorkingSetSize QuotaNonPagedPoolUsage Reserved [1-6]
-
getAllProcessListNt2Sync
同步
获取进程列表 (内核) -
getProcessCpuUsage2
异步
获取进程占用的cpu -
getProcessCpuUsage2Sync
同步
获取进程占用的cpu -
getProcessParentProcessMatch2
异步
匹配父进程信息 -
getProcessParentProcessMatch2Sync
同步
匹配父进程信息 -
getProcessFilePath2
异步
获取进程可执行文件路径 -
getProcessFilePath2Sync
异步
获取进程可执行文件路径 -
existProcess2
异步
判断进程是否存在 -
existProcess2Sync
异步
判断进程是否存在 -
getDetailsProcessList2
异步
久版api兼容api 指的导出带有可执行文件路径的进程列表 -
getDetailsProcessList2Sync
异步
久版api兼容api 指的导出带有可执行文件路径的进程列表 -
getProcessName2
异步
获取进程可执行文件名称 -
getProcessName2Sync
异步
获取进程可执行文件名称