multiprocessing.Queue() and missing sem_open
Оlе Ѕtrеісhеr
ole-usenet-spam at gmx.net
Thu Feb 5 15:22:33 EST 2015
Hi,
I am just trying to prepare a package (astropy) for (Debian) Hurd. This
os lacks a sem_open() implementation. When I now try:
import multiprocessing
q = multiprocessing.Queue()
I get an ImportError with Python 2.7, but an AttributeError with Python
3.4. In the documentation of multiprocessing.Queue() I couldn't find any
hint that it would throw this exception.
I am now curious, that
1. this behaviour is not documented
2. it changed at some point, without documentation.
Why does it not return a NotImplementedError (this is what I would
expect if a function is not implemented by the OS)?
Can I be sure that the following works also in future?
try
q = multiprocessing.Queue()
except (ImportError, AttributeError)
# handle the case of missing sem_open
Or what is the correct way to catch a not working Queue caused by a
missing sem_open() implementation?
Best regards
Ole
More information about the Python-list
mailing list