I've seen two approaches to get the thread id which return different results. one is used by a third party package I'm using which look like this :
...
#elif __APPLE__
uint64_t tid;
pthread_threadid_np(nullptr, &tid);
return static_cast<size_t>(tid);
#else
...
While on other places in the project I'm using the standard std way which is inheritedly cross platform
std::this_thread::get_id()
the third-party native approach return 4993544 while the std code return 0x1708b3000
Any idea how to explain the difference?