Cleanup from patch #683257:
Add missing INCREFs and re-indent returns to be consistent. Add \n\ for lines in docstring Add a pathetic test Add docs
This commit is contained in:
parent
c4f4ca91e1
commit
2294c0d4ec
|
@ -106,6 +106,19 @@ the process of completing its import (and the imports, if any,
|
|||
triggered by that).
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{acquire_lock}{}
|
||||
Acquires the interpreter's import lock for the current thread. This lock
|
||||
should be used by import hooks to ensure thread-safety when importing modules.
|
||||
On platforms without threads, this function does nothing.
|
||||
\versionadded{2.3}
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{release_lock}{}
|
||||
Release the interpreter's import lock.
|
||||
On platforms without threads, this function does nothing.
|
||||
\versionadded{2.3}
|
||||
\end{funcdesc}
|
||||
|
||||
The following constants with integer values, defined in this module,
|
||||
are used to indicate the search result of \function{find_module()}.
|
||||
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
|
||||
import imp
|
||||
import unittest
|
||||
from test_support import TestFailed
|
||||
|
||||
class ImpLock(unittest.TestCase):
|
||||
|
||||
# XXX this test is woefully inadequate, please fix me
|
||||
def testLock(self):
|
||||
LOOPS = 50
|
||||
for i in range(LOOPS):
|
||||
imp.acquire_lock()
|
||||
for i in range(LOOPS):
|
||||
imp.release_lock()
|
||||
|
||||
for i in range(LOOPS):
|
||||
try:
|
||||
imp.release_lock()
|
||||
except RuntimeError:
|
||||
pass
|
||||
else:
|
||||
raise TestFailed, \
|
||||
"release_lock() without lock should raise RuntimeError"
|
||||
|
||||
if __name__ == "__main__":
|
||||
test_support.run_unittest(ImpLock)
|
|
@ -305,7 +305,8 @@ imp_acquire_lock(PyObject *self, PyObject *args)
|
|||
#ifdef WITH_THREAD
|
||||
lock_import();
|
||||
#endif
|
||||
return Py_None;
|
||||
Py_INCREF(Py_None);
|
||||
return Py_None;
|
||||
}
|
||||
|
||||
static PyObject *
|
||||
|
@ -320,7 +321,8 @@ imp_release_lock(PyObject *self, PyObject *args)
|
|||
return NULL;
|
||||
}
|
||||
#endif
|
||||
return Py_None;
|
||||
Py_INCREF(Py_None);
|
||||
return Py_None;
|
||||
}
|
||||
|
||||
/* Helper for sys */
|
||||
|
@ -2778,8 +2780,9 @@ On platforms without threads, return 0.");
|
|||
|
||||
PyDoc_STRVAR(doc_acquire_lock,
|
||||
"acquire_lock() -> None\n\
|
||||
Acquires the interpreter's import lock for the current thread. This lock
|
||||
should be used by import hooks to ensure thread-safety when importing modules.
|
||||
Acquires the interpreter's import lock for the current thread.\n\
|
||||
This lock should be used by import hooks to ensure thread-safety\n\
|
||||
when importing modules.\n\
|
||||
On platforms without threads, this function does nothing.");
|
||||
|
||||
PyDoc_STRVAR(doc_release_lock,
|
||||
|
|
Loading…
Reference in New Issue