久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

    • <bdo id='YSa1Q'></bdo><ul id='YSa1Q'></ul>

        <i id='YSa1Q'><tr id='YSa1Q'><dt id='YSa1Q'><q id='YSa1Q'><span id='YSa1Q'><b id='YSa1Q'><form id='YSa1Q'><ins id='YSa1Q'></ins><ul id='YSa1Q'></ul><sub id='YSa1Q'></sub></form><legend id='YSa1Q'></legend><bdo id='YSa1Q'><pre id='YSa1Q'><center id='YSa1Q'></center></pre></bdo></b><th id='YSa1Q'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='YSa1Q'><tfoot id='YSa1Q'></tfoot><dl id='YSa1Q'><fieldset id='YSa1Q'></fieldset></dl></div>

        <tfoot id='YSa1Q'></tfoot>

      1. <legend id='YSa1Q'><style id='YSa1Q'><dir id='YSa1Q'><q id='YSa1Q'></q></dir></style></legend>
      2. <small id='YSa1Q'></small><noframes id='YSa1Q'>

        共享數(shù)組在 python 多處理中未正確共享

        Shared Array not shared correctly in python multiprocessing(共享數(shù)組在 python 多處理中未正確共享)

            <small id='eIjpj'></small><noframes id='eIjpj'>

                <tbody id='eIjpj'></tbody>
              <i id='eIjpj'><tr id='eIjpj'><dt id='eIjpj'><q id='eIjpj'><span id='eIjpj'><b id='eIjpj'><form id='eIjpj'><ins id='eIjpj'></ins><ul id='eIjpj'></ul><sub id='eIjpj'></sub></form><legend id='eIjpj'></legend><bdo id='eIjpj'><pre id='eIjpj'><center id='eIjpj'></center></pre></bdo></b><th id='eIjpj'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='eIjpj'><tfoot id='eIjpj'></tfoot><dl id='eIjpj'><fieldset id='eIjpj'></fieldset></dl></div>
                • <bdo id='eIjpj'></bdo><ul id='eIjpj'></ul>
                  <legend id='eIjpj'><style id='eIjpj'><dir id='eIjpj'><q id='eIjpj'></q></dir></style></legend>
                  <tfoot id='eIjpj'></tfoot>
                  本文介紹了共享數(shù)組在 python 多處理中未正確共享的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

                  問題描述

                  限時(shí)送ChatGPT賬號(hào)..

                  我正在 Python 中嘗試多處理,并嘗試在兩個(gè)進(jìn)程之間共享一個(gè)字符串?dāng)?shù)組.這是我的python代碼:

                  I am experimenting multiprocessing in Python and tried to share an Array of strings among two processes. Here is my python code :

                  from multiprocessing import Process, Array, Value
                  import ctypes
                  
                  def f1(a, v):
                      for i, l in enumerate(['a', 'b', 'c']):
                          a[i] = l*3
                  
                      v.value += 1
                  
                      print "f1 : ", a[:], v.value
                  
                  def f2(a,v):
                  
                      v.value += 1
                  
                      print "f2 : ", a[:], v.value
                  
                  if __name__ == '__main__':
                      val = Value(ctypes.c_int, 0)
                      arr = Array(ctypes.c_char_p, 3)
                  
                      print "Before :", arr[:], val.value
                  
                      p = Process(target=f1, args=(arr, val))
                      p2 = Process(target=f2, args=(arr, val))
                  
                      p.start()
                      p2.start()
                  
                      p.join()
                      p2.join()
                  
                      print "After : ", arr[:], val.value
                  

                  當(dāng)我運(yùn)行腳本時(shí),我看到 arr 已正確填充并在 f1() 中可用,但在 f2() 中不可用.結(jié)果如下:

                  When I run the script I see that arr is correctly populated and available in f1() but not in f2(). Here is the result:

                      % python /tmp/tests.py
                      Before : [None, None, None] 0
                      f1 :  ['aaa', 'bbb', 'ccc'] 1
                      f2 :  ['x01', 'x11', 'x01'] 2
                      After :  ['x01', 'x01', 'x01'] 2
                  

                  我是否忽略了什么?

                  提前感謝您的反饋.:)

                  Thanks in advance for your feedback. :)

                  推薦答案

                  我的猜測(cè)是:

                  arr 存儲(chǔ) 3 個(gè)指針.f1() 將它們分配給沒有意思是在當(dāng)前流程之外.f2() 嘗試訪問此時(shí)包含垃圾的無意義地址.

                  arr stores 3 pointers. f1() assigns them to memory addresses that have no meaning outside current process. f2() tries to access the meaningless addresses that contain junk at this point.

                  分配給在所有過程中都有意義的值似乎有幫助:

                  Assigning to values that have meaning in all processes seems to help:

                  from __future__ import print_function
                  import ctypes
                  import time
                  from multiprocessing import Process, Array, Value
                  
                  values = [(s*4).encode('ascii') for s in 'abc']
                  
                  def f1(a, v):
                      for i, s in enumerate(values):
                          a[i] = s
                  
                      v.value += 1
                  
                      print("f1 : ", a[:], v.value)
                  
                  def f2(a,v):
                      v.value += 1
                      print("f2 : ", a[:], v.value)
                  
                  def main():
                      val = Value(ctypes.c_int, 0)
                      arr = Array(ctypes.c_char_p, 3)
                  
                      print("Before :", arr[:], val.value)
                  
                      p = Process(target=f1, args=(arr, val))
                      p2 = Process(target=f2, args=(arr, val))
                  
                      p.start()
                      p2.start()
                  
                      p.join()
                      p2.join()
                  
                      print("After : ", arr[:], val.value)
                  
                  if __name__ == '__main__':
                      main()
                  

                  輸出

                  Before : [None, None, None] 0
                  f1 :  ['aaaa', 'bbbb', 'cccc'] 1
                  f2 :  ['aaaa', 'bbbb', 'cccc'] 2
                  After :  ['aaaa', 'bbbb', 'cccc'] 2
                  

                  這篇關(guān)于共享數(shù)組在 python 多處理中未正確共享的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

                  【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

                  相關(guān)文檔推薦

                  What exactly is Python multiprocessing Module#39;s .join() Method Doing?(Python 多處理模塊的 .join() 方法到底在做什么?)
                  Passing multiple parameters to pool.map() function in Python(在 Python 中將多個(gè)參數(shù)傳遞給 pool.map() 函數(shù))
                  multiprocessing.pool.MaybeEncodingError: #39;TypeError(quot;cannot serialize #39;_io.BufferedReader#39; objectquot;,)#39;(multiprocessing.pool.MaybeEncodingError: TypeError(cannot serialize _io.BufferedReader object,)) - IT屋-程序員軟件開
                  Python Multiprocess Pool. How to exit the script when one of the worker process determines no more work needs to be done?(Python 多進(jìn)程池.當(dāng)其中一個(gè)工作進(jìn)程確定不再需要完成工作時(shí),如何退出腳本?) - IT屋-程序員
                  How do you pass a Queue reference to a function managed by pool.map_async()?(如何將隊(duì)列引用傳遞給 pool.map_async() 管理的函數(shù)?)
                  yet another confusion with multiprocessing error, #39;module#39; object has no attribute #39;f#39;(與多處理錯(cuò)誤的另一個(gè)混淆,“模塊對(duì)象沒有屬性“f)
                  • <small id='g31WN'></small><noframes id='g31WN'>

                    <legend id='g31WN'><style id='g31WN'><dir id='g31WN'><q id='g31WN'></q></dir></style></legend>

                      • <i id='g31WN'><tr id='g31WN'><dt id='g31WN'><q id='g31WN'><span id='g31WN'><b id='g31WN'><form id='g31WN'><ins id='g31WN'></ins><ul id='g31WN'></ul><sub id='g31WN'></sub></form><legend id='g31WN'></legend><bdo id='g31WN'><pre id='g31WN'><center id='g31WN'></center></pre></bdo></b><th id='g31WN'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='g31WN'><tfoot id='g31WN'></tfoot><dl id='g31WN'><fieldset id='g31WN'></fieldset></dl></div>

                            <bdo id='g31WN'></bdo><ul id='g31WN'></ul>
                              <tbody id='g31WN'></tbody>
                            <tfoot id='g31WN'></tfoot>
                          • 主站蜘蛛池模板: 91免费观看 | 玖玖综合网 | 亚洲成av人片在线观看 | 国产精品中文字幕在线 | 久久av在线播放 | 中文字幕在线观看第一页 | 欧美日韩1区 | 国产精品久久久久久久久久 | 欧美一区二区在线观看 | 亚洲www啪成人一区二区 | 欧美精品乱码久久久久久按摩 | 免费在线看黄视频 | 妹子干综合 | 日韩福利片 | 亚洲成人精品国产 | 黑色丝袜三级在线播放 | 久久久久久久av | 亚洲美女一区 | 九九精品视频在线 | 毛片免费观看视频 | 亚洲精品日韩一区二区电影 | 91麻豆精品国产91久久久久久 | 婷婷在线视频 | 亚洲国产精品一区二区第一页 | 免费一级毛片 | 国产激情视频在线观看 | 国产一二区视频 | 欧美日韩中 | 日韩一区二区三区精品 | 成人一区二区视频 | 99av成人精品国语自产拍 | 日韩在线观看中文字幕 | 国产精品久久久久久 | 欧美日韩视频网站 | 欧美精品久久久 | 午夜影院操 | 成人一区二区三区在线观看 | 91一区二区三区在线观看 | 国产精品久久久久久久久久三级 | 久久久久久久国产精品影院 | 一区二区在线不卡 |