第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 dask 分布式工作器上初始化狀態(tài)

在 dask 分布式工作器上初始化狀態(tài)

拉風(fēng)的咖菲貓 2021-10-26 15:51:00
我正在嘗試做類似的事情resource = MyResource()def fn(x):   something = dosemthing(x, resource)   return somethingclient = Client()results = client.map(fn, data)問題是它resource不可序列化并且構(gòu)建起來很昂貴。因此,我想在每個工人上構(gòu)造一次它,并可供fn.我該怎么做呢?或者有沒有其他方法可以讓resource所有工人都可以使用?
查看完整描述

1 回答

?
吃雞游戲

TA貢獻1829條經(jīng)驗 獲得超7個贊

你總是可以構(gòu)建一個懶惰的資源,比如


class GiveAResource():

    resource = [None]

    def get_resource(self):

        if self.resource[0] is None:

            self.resource[0] = MyResource()

        return self.resource[0]

這樣的一個實例將在進程之間很好地序列化,因此您可以將它作為要在工作人員上執(zhí)行的任何函數(shù)的輸入,然后調(diào)用.get_resource()它會獲得本地昂貴的資源(它將在稍后出現(xiàn)的任何工作人員上重新制作)。


此類最好在模塊中而不是動態(tài)代碼中定義。


這里沒有鎖定,因此如果多個線程在到目前為止還不需要資源的情況下同時請求資源,您將獲得多余的工作。


查看完整回答
反對 回復(fù) 2021-10-26
  • 1 回答
  • 0 關(guān)注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號