summaryrefslogtreecommitdiff
path: root/Runtime/Threads/ThreadHelper.h
blob: 3e215387e5d9e025c8c6078759543173f82b65cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef THREADHELPER_H
#define THREADHELPER_H

#if SUPPORT_THREADS

#include "Thread.h"

// ThreadHelper is typically implemented on a per-platform basis, as it contains OS
// specific functionality outside regular POSIX / pthread / WinAPI threads.

class ThreadHelper
{
	friend class Thread;
	friend class PlatformThread;

protected:
	static void Sleep(double time);

	static void SetThreadName(const Thread* thread);
	static void SetThreadProcessor(const Thread* thread, int processor);

	static double GetThreadRunningTime(Thread::ThreadID thread);

private:
	ThreadHelper();
};

#endif //SUPPORT_THREADS

#endif