Files
pytorch/c10/test/util/DeadlockDetection_test.cpp
cyy 47a78daf91 [Environment Variable][1/N] Use thread-safe env variable API in c10 (#119449)
This PR is the beginning of attempts to wrap thread-unsafe getenv and set_env functions inside a RW mutex.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/119449
Approved by: https://github.com/malfet, https://github.com/albanD, https://github.com/eqy
2024-10-01 06:24:30 +00:00

31 lines
674 B
C++

#include <c10/util/DeadlockDetection.h>
#include <c10/util/env.h>
#include <gtest/gtest.h>
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) {
c10::utils::set_env("TORCH_DISABLE_DEADLOCK_DETECTION", "1");
DummyPythonGILHooks hooks;
SetPythonGILHooks(&hooks);
SetPythonGILHooks(&hooks);
}
#endif