PyQt QThreadPool error

Diez B. Roggisch deets at nospam.web.de
Thu Jan 7 15:02:25 EST 2010


h0uk schrieb:
> Hello.
> 
> I have the following code:
> 
>             #workers = {}
>             QtCore.QThreadPool.globalInstance().setExpiryTimeout
> (300000)
>             QtCore.QThreadPool.globalInstance().setMaxThreadCount(1)
>             for i in range(1, int(userscnt) + 1):
>                 work = wk.Worker(i)
>                 # connect signals
>                 work.mmShowCaptcha.connect(self.show_captcha_dlg)
>                 work.log.connect(self.handle_log)
>                 self.captcha_answer.connect(work.mmCaptchaAnswer)
>                 work.setAutoDelete(True)
>                 QtCore.QThreadPool.globalInstance().start(work)
> 
> 
> 
> On last line of code ( QtCore.QThreadPool.globalInstance().start
> (work) ) i get an error:
> 
> SystemError: error return without exception set
> 
> What is wrong in my code??? Any advise???


The error is on C-level. AFAIK it occurs when a Python-C-function 
returns "NULL" without setting an exception.

It's hard to say where it really occurs. I'd use a debug-build of PyQt, 
and possibly Python, and then investigate using gdb.

Alternatively, what happens when you do some "dummy"-work that doesn't 
use signals and no other libraries?

Diez



More information about the Python-list mailing list