Closed iandobbie closed 4 years ago
This seems to be Python issue #33725 and kind of fixed since Python 3.8 by change of default method to start a new process.
Basically, when starting another process, this can be done using spawn, fork, and forkserver. The fork method is considered unsafe in MacOSX and spawn is recommended. The default used to be fork but since Python 3.8 the default is spawn.
@iandobbie , could you check whether the branch "wip-macosx-spawn-issue106" on my fork fixes the issue for you?
Merged and pushed. Closing as fixed.
On my mac laptop starting the ximea camera gives and error :
objc[16270]: +[__NSPlaceholderDate initialize] may have been in progress in another thread when fork() was called.
Solution from...
https://stackoverflow.com/questions/50168647/multiprocessing-causes-python-to-crash-and-gives-an-error-may-have-been-in-progr
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
before starting microscope
Mick suggests we put this into the system environment if we are running on a mac.