亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

Python - 如何從打印信息的單獨進程實時讀取類實例

Python - 如何從打印信息的單獨進程實時讀取類實例

翻閱古今 2021-09-01 19:13:36
我有一段代碼不斷創建類 Car 的新實例。這樣做時,類 Car 正在創建它自己的實例列表,因此當我想獲取當前實例的信息時,我可以輕松地這樣做,如下面的代碼所示:from multiprocessing import Processimport timeclass Car:    car_list = list()    def __init__(self, id, model):        self.id = id        self.model = model        Car.car_list.append(self)    @classmethod    def get_current_instances(cls):        return Car.car_listclass Interface:    def print_current_system(self):        while True:            print(len(Car.get_current_instances()))            time.sleep(1)if __name__ == "__main__":    interface = Interface()    model = ["Toyota", "BMW"]    [Car(i, model[i]) for i in range(len(model))]    print_process = Process(target=interface.print_current_system)    print_process.start()    Car(2345, "Tesla")    print("from main process " + str(len(Car.get_current_instances()))) 出于問題的目的,此代碼已簡化。但是,問題仍然存在。我正在從新進程調用函數 print_current_system。此函數不斷查看 Car 的所有當前實例并打印汽車數量。當我開始這個進程,然后,然后添加一些新的 Car 實例時,這些實例對另一個子進程是隱藏的,而對主進程是完全可見的。我很確定我需要使用隊列或管道之類的東西。但是,我不確定如何。這是上面代碼的輸出:2from main process 322222
查看完整描述

2 回答

  • 2 回答
  • 0 關注
  • 159 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號