rpcsx/rpcs3/Emu/RSX/Core/RSXEngLock.hpp
DH 62ad27d1e2 split rpcs3 and hle libraries
merge rpcs3 utilities
2025-04-08 19:46:57 +03:00

33 lines
404 B
C++

#pragma once
#include <util/types.hpp>
#include "../RSXThread.h"
namespace rsx
{
class eng_lock
{
rsx::thread* pthr;
public:
eng_lock(rsx::thread* target)
: pthr(target)
{
if (pthr->is_current_thread())
{
pthr = nullptr;
}
else
{
pthr->pause();
}
}
~eng_lock()
{
if (pthr)
pthr->unpause();
}
};
} // namespace rsx