HarmonyOS 获取当前进程是否主进程,process字段里没有processName,只有 pid,不好判断是否主进程?

static async isMainThread(): Promise<boolean> { 
  return appManager.getRunningProcessInformation() 
  .then((processInfos) => { 
  return processInfos.find(info => info.pid === process.pid)?.processName === AppInfo.getPackageName() 
}).catch(() => false) 
} 
}

目前的方案是通过appManager.getRunningProcessInformation里获取所有的process ,看里面是否有 pid 等于当前 process 的 pid ,拿出来与我们主进程的包名比较。

希望给 process增加一个 process.processName 的属性。


HarmonyOS
2024-11-25 09:10:59
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

主线程的线程号与进程号相同,在需要的地方判断当前的tid和pid是否相等即可。

import process from '@ohos.process'; 
 
function  isMainThread(): boolean { 
  return process.pid == process.tid 
}
分享
微博
QQ
微信
回复
2024-11-25 16:00:15
相关问题
没有api可以杀掉当前进程
1597浏览 • 1回复 待解决
Redis 7.0 Multi Part AOF主进程如何处理?
2837浏览 • 1回复 待解决
卡片提供方在主进程中主动更新卡片
1593浏览 • 1回复 待解决
求大佬告知如何查询进程pid
2080浏览 • 1回复 待解决
如何查询进程pid有知道的吗?
1626浏览 • 1回复 待解决
HarmonyOS 如何获取进程
21浏览 • 1回复 待解决
Ubuntu桌面版的进程是否可以杀死
2231浏览 • 1回复 待解决
IPC跨进程通讯是否能够异步返回数据
423浏览 • 1回复 待解决