need some help with unexpected signal exception when using inputfrom a thread (Pypy 1.9.0 on osx/lin

I

Irmen de Jong

Hi.
Using Pypy 1.9.0. Importing readline. Using a background thread to get input() from
stdin. It then crashes with:

File "/usr/local/Cellar/pypy/1.9/lib_pypy/pyrepl/unix_console.py", line 400, in restore
signal.signal(signal.SIGWINCH, self.old_sigwinch)
ValueError: signal() must be called from the main thread

Anyone seen this before? What's going on?
When I don't import readline, or do the input() from within the main thread, the problem
disappears.

(I tried to reproduce it in a small test scenario but unfortunately have not been able
to do so yet. Haven't figured out yet what the additional factors are that trigger this
problem. A simple import readline and input() from a new thread doesn't seem to trigger
it, unfortunately)


Regards
Irmen de Jong
 
D

Dieter Maurer

Irmen de Jong said:
Using Pypy 1.9.0. Importing readline. Using a background thread to get input() from
stdin. It then crashes with:

File "/usr/local/Cellar/pypy/1.9/lib_pypy/pyrepl/unix_console.py", line 400, in restore
signal.signal(signal.SIGWINCH, self.old_sigwinch)
ValueError: signal() must be called from the main thread

Anyone seen this before? What's going on?

Apparently, "input" is not apt to be called from a "background thread".

I have no idea why "signal" should only be callable from the main thread.
I do not think this makes much sense. Speak with the "Pypy" developers
about this.
 

Members online

Forum statistics

Threads
473,992
Messages
2,570,220
Members
46,807
Latest member
ryef

Latest Threads

Top