diff --git a/direct/src/stdpy/thread.py b/direct/src/stdpy/thread.py index 2533461e22..06d31d599b 100644 --- a/direct/src/stdpy/thread.py +++ b/direct/src/stdpy/thread.py @@ -11,11 +11,17 @@ __all__ = [ 'interrupt_main', 'exit', 'allocate_lock', 'get_ident', 'stack_size', + 'forceYield', 'considerYield', ] # Import PandaModules as pm, so we don't have any namespace collisions. from pandac import PandaModules as pm +# These methods are defined in Panda, and are particularly useful if +# you may be running in Panda's SIMPLE_THREADS compilation mode. +forceYield = pm.Thread.forceYield +considerYield = pm.Thread.considerYield + class error(StandardError): pass diff --git a/direct/src/stdpy/threading.py b/direct/src/stdpy/threading.py index 519ba62299..cc8883fad6 100644 --- a/direct/src/stdpy/threading.py +++ b/direct/src/stdpy/threading.py @@ -81,6 +81,12 @@ class ThreadBase: else: self.__dict__[key] = value +# Copy these static methods from Panda's Thread object. These are +# useful if you may be running in Panda's SIMPLE_THREADS compilation +# mode. +ThreadBase.forceYield = pm.Thread.forceYield +ThreadBase.considerYield = pm.Thread.considerYield + class Thread(ThreadBase): """ This class provides a wrapper around Panda's PythonThread object. The wrapper is designed to emulate Python's own