from multiprocessing import Pool
from itertools import product

def sym(lst):
    x,y=lst
    tmp=x*y
    if rec(tmp):
        return tmp
    else:
        return None

def rec(num):
    num=str(num)
    if num == "".join(reversed(num)):    return True
    else:    return False

if __name__ == "__main__":
    pool=Pool(processes=8)
    lst=product(xrange(100,1000),repeat=2)
    rst=pool.map(sym,lst)
    #rst=sym(lst)
    print max(rst)


in my old computer(2006),
when run it on single process, it takes 2 seconds
but using multiprocessing.pool, it takes almost 8 or 9 seconds
is it possible?
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to