Cogs.Core
Threads.Windows.cpp
1#include "Threads.h"
2#include "Unicode.h"
3
4#define WIN32_LEAN_AND_MEAN
5#include <Windows.h>
6
7void Cogs::Threads::setName(Thread& thread, const std::string& name)
8{
9 SetThreadDescription(static_cast<HANDLE>(thread.native_handle()), widen(name).c_str());
10}
11
12void Cogs::Threads::sleep(int milliseconds) {
13 std::this_thread::sleep_for(std::chrono::milliseconds(milliseconds));
14}
15
16void Cogs::Threads::yield() {
17 std::this_thread::yield();
18}
19
20size_t Cogs::Threads::hardwareConcurrency() {
21 return std::thread::hardware_concurrency();
22}