Skip to content

Error with multiprocessing #152

@Almenon

Description

@Almenon

AREPL version: 1.0.24

from multiprocessing import Pool
import os

processed=0

def f(x):
    global processed
    processed += 1
    print("Processed by %s: %s" % (os.getpid(), processed))
    return x

if __name__ == '__main__':
    pool = Pool(processes=1)
    print(pool.map(f, range(10)))
Traceback (most recent call last):
  line 14, in <module>
  File "C:\Users\almenon\AppData\Local\Programs\Python\Python36\lib\multiprocessing\pool.py", line 266, in map
    return self._map_async(func, iterable, mapstar, chunksize).get()
  File "C:\Users\almenon\AppData\Local\Programs\Python\Python36\lib\multiprocessing\pool.py", line 644, in get
    raise self._value
  File "C:\Users\almenon\AppData\Local\Programs\Python\Python36\lib\multiprocessing\pool.py", line 424, in _handle_tasks
    put(task)
  File "C:\Users\almenon\AppData\Local\Programs\Python\Python36\lib\multiprocessing\connection.py", line 206, in send
    self._send_bytes(_ForkingPickler.dumps(obj))
  File "C:\Users\almenon\AppData\Local\Programs\Python\Python36\lib\multiprocessing\reduction.py", line 51, in dumps
    cls(buf, protocol).dump(obj)
_pickle.PicklingError: Can't pickle <function f at 0x00000203C03C4510>: attribute lookup f on __main__ failed

Print Output:
Variables:
-{
    pool: "AREPL could not pickle this object",
    processed: 0
}
39 ms

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions