# std::this_thread::get_id

From cppreference.com
< cpp‎ | thread

Defined in header `<thread>` |  |
std::thread::id get_id(); |  | (since C++11)

Returns the id of the current thread.

### Parameters

(none)

### Return value

id of the current thread

### Exceptions

`noexcept` specification:
noexcept

### Example

Run this code

    #include <iostream>
    #include <thread>
    #include <chrono>
    #include <mutex>

    std::mutex g_display_mutex;

    void foo()
    {
        std::thread::id this_id = std::this_thread::get_id();

        g_display_mutex.lock();
        std::cout << "thread " << this_id << " sleeping...\n";
        g_display_mutex.unlock();

        std::this_thread::sleep_for(std::chrono::seconds(1));
    }

    int main()
    {
        std::thread t1(foo);
        std::thread t2(foo);

        t1.join();
        t2.join();
    }

Possible output:

    thread 0x2384b312 sleeping...
    thread 0x228a10fc sleeping...

### See also

get_id (C++11) | returns the id of the thread (public member function of `std::thread`)
C documentation for thrd_current

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/thread/get_id&oldid=91523"
Category:

- unconditionally noexcept

Hidden categories:

- Pages with unreviewed unconditional noexcept template
- Pages with unreviewed noexcept template