mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-22 14:15:01 +08:00
Summary: Breaking out of #8338 to completely remove build_aten and use_aten. Pull Request resolved: https://github.com/pytorch/pytorch/pull/10469 Reviewed By: orionr Differential Revision: D9413639 Pulled By: mingzhe09088 fbshipit-source-id: b7203aa4f5f2bb95c504c8dc187a3167f2570183
24 lines
627 B
Python
24 lines
627 B
Python
## @package extension_loader
|
|
# Module caffe2.python.extension_loader
|
|
from __future__ import absolute_import
|
|
from __future__ import division
|
|
from __future__ import print_function
|
|
from __future__ import unicode_literals
|
|
import contextlib
|
|
import ctypes
|
|
import sys
|
|
|
|
|
|
_set_global_flags = (
|
|
hasattr(sys, 'getdlopenflags') and hasattr(sys, 'setdlopenflags'))
|
|
|
|
|
|
@contextlib.contextmanager
|
|
def DlopenGuard(extra_flags=ctypes.RTLD_GLOBAL):
|
|
if _set_global_flags:
|
|
old_flags = sys.getdlopenflags()
|
|
sys.setdlopenflags(old_flags | extra_flags)
|
|
yield
|
|
if _set_global_flags:
|
|
sys.setdlopenflags(old_flags)
|