common/thread: Remove unused functions
Many of these functions are carried over from Dolphin (where they aren't used anymore). Given these have no use (and we really shouldn't be screwing around with OS-specific thread scheduler handling from the emulator, these can be removed. The function for setting the thread name is left, however, since it can have debugging utility usages.
This commit is contained in:
parent
16dc3a1dd5
commit
394095438a
@ -27,18 +27,6 @@ namespace Common {
|
|||||||
|
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
|
|
||||||
void SetThreadAffinity(std::thread::native_handle_type thread, u32 mask) {
|
|
||||||
SetThreadAffinityMask(thread, mask);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetCurrentThreadAffinity(u32 mask) {
|
|
||||||
SetThreadAffinityMask(GetCurrentThread(), mask);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SwitchCurrentThread() {
|
|
||||||
SwitchToThread();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Sets the debugger-visible name of the current thread.
|
// Sets the debugger-visible name of the current thread.
|
||||||
// Uses undocumented (actually, it is now documented) trick.
|
// Uses undocumented (actually, it is now documented) trick.
|
||||||
// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsdebug/html/vxtsksettingthreadname.asp
|
// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsdebug/html/vxtsksettingthreadname.asp
|
||||||
@ -70,31 +58,6 @@ void SetCurrentThreadName(const char* name) {
|
|||||||
|
|
||||||
#else // !MSVC_VER, so must be POSIX threads
|
#else // !MSVC_VER, so must be POSIX threads
|
||||||
|
|
||||||
void SetThreadAffinity(std::thread::native_handle_type thread, u32 mask) {
|
|
||||||
#ifdef __APPLE__
|
|
||||||
thread_policy_set(pthread_mach_thread_np(thread), THREAD_AFFINITY_POLICY, (integer_t*)&mask, 1);
|
|
||||||
#elif (defined __linux__ || defined __FreeBSD__) && !(defined ANDROID)
|
|
||||||
cpu_set_t cpu_set;
|
|
||||||
CPU_ZERO(&cpu_set);
|
|
||||||
|
|
||||||
for (int i = 0; i != sizeof(mask) * 8; ++i)
|
|
||||||
if ((mask >> i) & 1)
|
|
||||||
CPU_SET(i, &cpu_set);
|
|
||||||
|
|
||||||
pthread_setaffinity_np(thread, sizeof(cpu_set), &cpu_set);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetCurrentThreadAffinity(u32 mask) {
|
|
||||||
SetThreadAffinity(pthread_self(), mask);
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifndef _WIN32
|
|
||||||
void SwitchCurrentThread() {
|
|
||||||
usleep(1000 * 1);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// MinGW with the POSIX threading model does not support pthread_setname_np
|
// MinGW with the POSIX threading model does not support pthread_setname_np
|
||||||
#if !defined(_WIN32) || defined(_MSC_VER)
|
#if !defined(_WIN32) || defined(_MSC_VER)
|
||||||
void SetCurrentThreadName(const char* name) {
|
void SetCurrentThreadName(const char* name) {
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
#include <thread>
|
#include <thread>
|
||||||
#include "common/common_types.h"
|
|
||||||
|
|
||||||
namespace Common {
|
namespace Common {
|
||||||
|
|
||||||
@ -78,9 +77,6 @@ private:
|
|||||||
std::size_t generation = 0; // Incremented once each time the barrier is used
|
std::size_t generation = 0; // Incremented once each time the barrier is used
|
||||||
};
|
};
|
||||||
|
|
||||||
void SetThreadAffinity(std::thread::native_handle_type thread, u32 mask);
|
|
||||||
void SetCurrentThreadAffinity(u32 mask);
|
|
||||||
void SwitchCurrentThread(); // On Linux, this is equal to sleep 1ms
|
|
||||||
void SetCurrentThreadName(const char* name);
|
void SetCurrentThreadName(const char* name);
|
||||||
|
|
||||||
} // namespace Common
|
} // namespace Common
|
||||||
|
Loading…
Reference in New Issue
Block a user