Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Hasło nie zostało zweryfikowane
Niniejsze hasło zostało opracowane, jednak nie zostało ono zweryfikowane przez administrację serwisu. Jeżeli znalazłeś błędy merytoryczne w niniejszym dokumencie, prosimy o ich zgłoszenie na forum w dziale Znalezione błędy.
Opracował: pekfos
Język C++

this_thread::yield

[funkcja] Rezygnuje z czasu procesora na rzecz innych wątków.

Składnia

C/C++
#include <thread>

namespace std
{
    namespace this_thread
    {
        void yield();
    }
}

Opis szczegółowy

Rezygnuje z czasu procesora na rzecz innych wątków.

Przykład

C/C++
#include <iostream>
#include <chrono>
#include <thread>

void little_sleep( std::chrono::microseconds us )
{
    auto start = std::chrono::high_resolution_clock::now();
    auto end = start + us;
    do {
        std::this_thread::yield();
    } while( std::chrono::high_resolution_clock::now() < end );
   
}

int main()
{
    auto start = std::chrono::high_resolution_clock::now();
   
    little_sleep( std::chrono::microseconds( 100 ) );
   
    auto elapsed = std::chrono::high_resolution_clock::now() - start;
    std::cout << "czakano "
    << std::chrono::duration_cast < std::chrono::microseconds >( elapsed ).count()
    << " mikrosekund.\n";
}

Linki zewnętrzne