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
9h前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

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

import process from '@ohos.process'; 
 
function  isMainThread(): boolean { 
  return process.pid == process.tid 
}
分享
微博
QQ
微信
回复
2h前
相关问题
没有api可以杀掉当前进程
1501浏览 • 1回复 待解决
Redis 7.0 Multi Part AOF主进程如何处理?
2738浏览 • 1回复 待解决
卡片提供方在主进程中主动更新卡片
1518浏览 • 1回复 待解决
求大佬告知如何查询进程pid
1934浏览 • 1回复 待解决
如何查询进程pid有知道的吗?
1534浏览 • 1回复 待解决
Ubuntu桌面版的进程是否可以杀死
2164浏览 • 1回复 待解决
IPC跨进程通讯是否能够异步返回数据
299浏览 • 1回复 待解决
HarmonyOS 如何强制杀进程
287浏览 • 1回复 待解决