[Image-SIG] [python-imaging-sane] get_devices and threading
Sandro Mani
manisandro at gmail.com
Mon Dec 27 17:58:31 CET 2010
Hi,
I wanted to execute sane.get_devices in a separate thread, i.e. consider
the following program:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import threading
import sane
import time
devices=None
class GetDevicesThread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
self.setDaemon(True)
def run(self):
global devices
#time.sleep(10)
#devices=[]
devices=sane.get_devices()
sane.init()
GetDevicesThread().start()
print "Detecting devices"
while devices==None:
time.sleep(1)
print "."
print devices
The devices=sane.get_devices() call in run() for some reason pauses the
main thread during it's execution - if I switch the statement with the
two commented lines above, all works as expected. Is there any
particular reason for this behaviour?
Thanks
Sandro Mani
More information about the Image-SIG
mailing list