• <table id="4yyaw"><kbd id="4yyaw"></kbd></table>
  • <td id="4yyaw"></td>
  • 發布時間:2020-10-05 19:01 原文鏈接: python修煉day31(一)

    進程

    今日思維導圖

    python修煉day31!

    python修煉day31!

    練習代碼

    進程實現多任務

    importmultiprocessing

    importthreading

    deftest1(num):

    foriinrange(num):

    print("---test1%d"%i)

    deftest2(num):

    foriinrange(num):

    print("---test2%d"%i)

    defmain():

    """創建子進程只需要把庫換成multiprocessing.Proess即可"""

    #t1=threading.Thread(target=test1,args=(5,))

    #t2=threading.Thread(target=test2,args=(10,))

    p1=multiprocessing.Process(target=test1,args=(5,))

    p2=multiprocessing.Process(target=test2,args=(10,))

    p1.start()

    p2.start()

    if__name__=='__main__':

    main()

    獲取進程的pid

    importmultiprocessing

    importos

    importtime

    """

    獲取進程的pid

    os.getpid可以獲取當前進程的進程號

    os.getppid可以獲取當前進程父進程的進程號

    """

    deftest():

    whileTrue:

    print("--當前進程是%s,父進程是%s"%(os.getpid(),os.getppid()))

    time.sleep(1)

    defmain():

    #創建進程

    p=multiprocessing.Process(target=test)

    p.start()

    print("主程序進程是%s"%os.getpid())

    pass

    if__name__=='__main__':

    main()

    進程傳遞參數

    importmultiprocessing

    """

    Process傳遞的參數可以是多值參數

    *args:代表多值元組

    **kwargs:打包多值字典

    """

    deftest(a,*args,**kwargs):

    print(a)

    fornuminargs:

    print(num)

    print(kwargs)

    defmain():

    p=multiprocessing.Process(target=test,args=(1,2,3,4,5),kwargs={"name":"xiaohei"})

    p.start()

    if__name__=='__main__':

    main()

    進程之間不共享全局變量

    importos

    importtime

    importmultiprocessing

    """


  • <table id="4yyaw"><kbd id="4yyaw"></kbd></table>
  • <td id="4yyaw"></td>
  • 调性视频