user6228086
user6228086

Reputation: 31

why pool.map in python doesn't work

import multiprocessing as mul

def f(x):
    return x**2

pool = mul.Pool(5)
rel  = pool.map(f,[1,2,3,4,5,6,7,8,9,10])

print(rel)

When I run the program above, the application is stuck in a loop and can't stop. I am using python 3.5 in windows, is there something wrong?

This is what I see on my screen:

I am new to finance data analysis; and I am trying to find out a way to solve the big data problem with parallel computing.

Upvotes: 3

Views: 6944

Answers (1)

Burhan Khalid
Burhan Khalid

Reputation: 174708

Its not working because you are typing the commands in a shell; try saving the code in a file and running it directly.

Don't forget to copy the code correctly, you were missing a very important if statement (see the documentation).

Save this to a file, for example example.py on the desktop:

import multiprocessing as mul

def f(x):
    return x**2

if __name__ == '__main__':
    pool = mul.Pool(5)
    rel  = pool.map(f,[1,2,3,4,5,6,7,8,9,10])

    print(rel)

Then, open a command prompt and type:

python %USERPROFILE%\Desktop\example.py

Upvotes: 6

Related Questions