hb_gil.py
31 lines
| 574 B
| text/x-python
|
PythonLexer
MinRK
|
r5885 | """ | ||
Run this script in the qtconsole with one of: | ||||
Matthias BUSSONNIER
|
r6765 | %load hb_gil.py | ||
MinRK
|
r5885 | |||
or | ||||
%run hb_gil.py | ||||
Holding the GIL for too long could disrupt the heartbeat. | ||||
See Issue #1260: https://github.com/ipython/ipython/issues/1260 | ||||
""" | ||||
import sys | ||||
import time | ||||
from cython import inline | ||||
def gilsleep(t): | ||||
"""gil-holding sleep with cython.inline""" | ||||
code = '\n'.join([ | ||||
'from posix cimport unistd', | ||||
'unistd.sleep(t)', | ||||
]) | ||||
while True: | ||||
inline(code, quiet=True, t=t) | ||||
Thomas Kluyver
|
r6455 | print(time.time()) | ||
MinRK
|
r5885 | sys.stdout.flush() # this is important | ||
gilsleep(5) | ||||