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 31
|
#include <c10/util/DeadlockDetection.h>
#include <gtest/gtest.h>
#include <cstdlib>
using namespace ::testing;
using namespace c10::impl;
struct DummyPythonGILHooks : public PythonGILHooks {
bool check_python_gil() const override {
return true;
}
};
TEST(DeadlockDetection, basic) {
ASSERT_FALSE(check_python_gil());
DummyPythonGILHooks hooks;
SetPythonGILHooks(&hooks);
ASSERT_TRUE(check_python_gil());
SetPythonGILHooks(nullptr);
}
#ifndef _WIN32
TEST(DeadlockDetection, disable) {
setenv("TORCH_DISABLE_DEADLOCK_DETECTION", "1", 1);
DummyPythonGILHooks hooks;
SetPythonGILHooks(&hooks);
SetPythonGILHooks(&hooks);
}
#endif
|