簡體   English   中英

共享數組多處理 Python

[英]Shared array multiprocessing Python

我正在使用共享數組在 Python 中運行多進程代碼。 問題是我無法初始化該數組...
要在我讀過的多進程程序中共享一個數組,我需要使用 multiprocessing.Array,但是當我按照下面的代碼嘗試它時,它沒有打印任何內容+我沒有錯誤消息。

import multiprocessing
...
...

if  __name__ == "__main__":

   an_array= multiprocessing.Array("i", [1,2])

   print(an_array)       # why does it not print anything? I was expecting to print [1,2]

   p1 = multiprocessing.Process(target=function1, args = [an_array, 3]

要打印Array中的元素,請執行以下操作:

import multiprocessing

if __name__ == '__main__':

    an_array = multiprocessing.Array("i", [1, 2])

    # first choice to print element in Array:
    for element in an_array:
        print(element)

    # second choice to print elements in Array:
    print(an_array[:])

    # third choice to print elements in Array:
    print(list(an_array[:]))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM