跟大模型对话不要点耐心和判别力还TM要死

文章讨论了Python异步环境下,由于单线程限制可能导致的全局变量同步问题,以及如何通过异步锁解决,以保证数据一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

也就是现在我这个代码不会出现读取函数中读取的两个全局列表数据出现长度不一样的问题?

   
import time    
import asyncio
import concurrent.futures
import random


# 全局变量,用于存储计算结果的列表
list1 = []
list2 = []
# CPU计算密集型任务
async def cpu_intensive_task():
    global list1, list2
    while True:
        # 进行CPU计算密集型任务,这里简单地生成随机数并添加到列表中
        random_number = random.randint(1, 100)
        list1.append(random_number)
        data = open('xxoo.txt','r').readlines()
        list2 = data[:len(list1)]
        await asyncio.sleep(5)
        list1 = []
        list2 = []

# 读取协程函数
async def reader_coroutine():
    global list1, list2

    while True:
        # 读取列表1和列表2的值
        print(f"List 1: {list1}")
        print(f"List 2: {list2}")
        await asyncio.sleep(1)  # 每隔1秒读取一次

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值