HarmonyOS cpp下有什么方法判断当前的napi_env是js主线程的env

HarmonyOS
2024-12-19 16:17:06
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

env不能跨线程传递,因此判断env是不是主线程的env,通过判断当前线程是不是主线程就可以,主线程的线程号与进程号相同。

#include <unistd.h>
#include <thread>
#include <sys/syscall.h>

  bool isMainThread() {
  pid_t pid = getpid();
  pid_t tid = syscall(SYS_gettid);

  if (pid == tid) {
    return true;
  } else {
    return false;
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
分享
微博
QQ
微信
回复
2024-12-19 19:01:58
相关问题
HarmonyOS napi_env如何跨线程使用
736浏览 • 1回复 待解决
什么禁止缓存napi_env
1855浏览 • 1回复 待解决
如何判断当前线程是否主线程
3300浏览 • 1回复 待解决
怎样判断当前线程是否主线程
1418浏览 • 1回复 待解决
NAPI执行上层回调时,如何获取env
3134浏览 • 1回复 待解决
如何在NAPI执行上层回调时获取env
797浏览 • 1回复 待解决
Worker宿主线程必须主线程吗?
1176浏览 • 1回复 待解决
如何判断是否为主线程
2060浏览 • 1回复 待解决