u010493679 2021-12-17 14:31 采纳率: 95.7%
浏览 202
已结题

运行完代码后,内存过高,怎么释放内存?

下面案例 仅是简单的举例;
实际的代码(for j in l ,这一段非常多),运行完一次后,电脑内存达到99.99%(电脑内存为48g)
需求为:运行完一次后,就释放内存,以便第二个时间点在运行;


import datetime
 
def fun(i10):
    l = [1, 2, 3,4]
    a=[1,2,3]
    for j in l:
        if j>a[i10]:
            print(j
   #每运行完一次,释放内存
 
d = []
times = ["22:22:00" , "22:22:05" , '22:22:10']
while True:
    now = datetime.datetime.now()
    time = datetime.datetime.strftime(now, '%H:%M:%S')
    if time not in d and time in times:
        d.append(time)
        fun(times.index(time))
        if len(d) == len(times):
            break
  • 写回答

2条回答 默认 最新

  • 技术专家团-Bamboo 2021-12-18 05:10
    关注
    import datetime
    import time as t
    
    def fun(i10):
        l = [1, 2, 3, 4]
        a = [1, 2, 3]
        for j in l:
            if j > a[i10]:
                print(j,end=' ')
        print()
    # 每运行完一次,释放内存
    d = []
    times = ["13:09:00", "13:09:01", '13:09:02']
    while True:
        t.sleep(0.2)
        now = datetime.datetime.now()
        time = datetime.datetime.strftime(now, '%H:%M:%S')
        if time not in d and time in times:
            d.append(time)
            fun(times.index(time))
            if len(d) == len(times):
                break
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 12月31日
  • 已采纳回答 12月23日
  • 创建了问题 12月17日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部