python-多任务编程-线程通信

示例代码如下:

import threading
import time


class Task(threading.Thread):

    def __init__(self, food, finish_food):
        super().__init__()
        self.food = food
        self.finish_food = finish_food

    def run(self):
        print(self.food, "开始制作")
        time.sleep(2)
        print(self.food, "制作完成")
        self.finish_food.append(self.food)
        print(id(self.finish_food))


def main():

    food_list = ['番茄炒鸡蛋', '青椒炒牛肉']

    finish_food = []

    for food in food_list:
        t = Task(food, finish_food)
        # 调用start才会真正创建线程, 开启线程后,会调用run方法
        t.start()

    time.sleep(2)

    print(id(finish_food))

    print(finish_food)

    print('程序执行结束...')


if __name__ == '__main__':
    main()

posted @ 2021-03-26 15:55  程序员陈师兄cxycsx  阅读(46)  评论(0)    收藏  举报