Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

multiprocessing.Manager issue #19

Closed
Winand opened this issue Nov 30, 2018 · 1 comment
Closed

multiprocessing.Manager issue #19

Winand opened this issue Nov 30, 2018 · 1 comment

Comments

@Winand
Copy link

Winand commented Nov 30, 2018

Windows 10 x64, Python 3.6.6 (Anaconda), VS Code.
I've tried to run several examples but it gives error on pypeln import line:
from pypeln import process as pr :

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Anaconda3\lib\multiprocessing\spawn.py", line 105, in spawn_main
    exitcode = _main(fd)
  File "C:\Anaconda3\lib\multiprocessing\spawn.py", line 114, in _main
    prepare(preparation_data)
  File "C:\Anaconda3\lib\multiprocessing\spawn.py", line 225, in prepare
    _fixup_main_from_path(data['init_main_from_path'])
  File "C:\Anaconda3\lib\multiprocessing\spawn.py", line 277, in _fixup_main_from_path
    run_name="__mp_main__")
  File "C:\Anaconda3\lib\runpy.py", line 263, in run_path
    pkg_name=pkg_name, script_name=fname)
  File "C:\Anaconda3\lib\runpy.py", line 96, in _run_module_code
    mod_name, mod_spec, pkg_name, script_name)
  File "C:\Anaconda3\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "f:\python\projects\multiproc\pypeline.py", line 26, in <module>
    from pypeln import thread as th
  File "C:\Anaconda3\lib\site-packages\pypeln\__init__.py", line 9, in <module>
    from . import process
  File "C:\Anaconda3\lib\site-packages\pypeln\process.py", line 132, in <module>
    _MANAGER = Manager()
  File "C:\Anaconda3\lib\multiprocessing\context.py", line 56, in Manager
    m.start()
  File "C:\Anaconda3\lib\multiprocessing\managers.py", line 513, in start
    self._process.start()
  File "C:\Anaconda3\lib\multiprocessing\process.py", line 105, in start
    self._popen = self._Popen(self)
  File "C:\Anaconda3\lib\multiprocessing\context.py", line 322, in _Popen
    return Popen(process_obj)
  File "C:\Anaconda3\lib\multiprocessing\popen_spawn_win32.py", line 33, in __init__
    prep_data = spawn.get_preparation_data(process_obj._name)
  File "C:\Anaconda3\lib\multiprocessing\spawn.py", line 143, in get_preparation_data
    _check_not_importing_main()
  File "C:\Anaconda3\lib\multiprocessing\spawn.py", line 136, in _check_not_importing_main
    is not going to be frozen to produce an executable.''')
RuntimeError:
        An attempt has been made to start a new process before the
        current process has finished its bootstrapping phase.

        This probably means that you are not using fork to start your
        child processes and you have forgotten to use the proper idiom
        in the main module:

            if __name__ == '__main__':
                freeze_support()
                ...

        The "freeze_support()" line can be omitted if the program
        is not going to be frozen to produce an executable.

I also tried to put pypeln import inside if __name__ == '__main__': block but then child processes give the same error.

@cgarciae
Copy link
Owner

cgarciae commented Dec 9, 2018

Hey @Winand !
This is very strange. I can only think this is because you are on Windows. Sadly, I have no easy way to test on this platform.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants