gettid() returns the thread ID of the current process. This is equal
to the process ID (as returned by
getpid(2)),
unless the process is part of a thread group (created by specifying
the CLONE_THREAD flag to the
clone(2)
system call). All processes in the same thread group
have the same PID, but each one has a unique TID.