windows中python 进程池上报freeze_support() 错误

import multiprocessing

import os, time, random

def work(i):
    t_start = time.time()
    print("pid = %d" % os.getpid())
    time.sleep(random.random()*2)
    t_end = time.time()

    print(i,"耗时%06.2f" % (t_end-t_start))



po = multiprocessing.Pool(processes=3)

def main():
    print("main start")
    global po
    print(po)
    for i in range(10):
        po.apply_async(work,args=(i,))

    po.close()
    po.join()

    print("main end")

if __name__ == '__main__':
    main()
po = multiprocessing.Pool(processes=3)

这个写到mian()函数里面就可以了,不知道为什么?