gpt4 book ai didi

python - 为什么Flask读取大文本文件不占内存?

转载 作者:行者123 更新时间:2023-11-28 17:15:30 27 4
gpt4 key购买 nike

我编写了一个简单的 Flask 应用程序来测试其内存使用情况。

这是代码。

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
with open("file.txt", "r") as fd:
text = fd.read()
return "Hello World!"

if __name__ == "__main__":
app.run(host="0.0.0.0")

file.txt 由该命令创建,大小为 50MB。

base64 /dev/urandom | head -c 50000000 > file.txt

用这个命令运行它:

python3 test.app

如果不读取file.txt就运行,内存占用为18448KB。

如果运行并读取file.txt,内存占用为18988KB。

这个文件是50MB,但是内存占用只增加了540KB。我不明白 Python 是如何工作的。

最佳答案

因为内存在 View 退出后被垃圾回收了。在 View 运行的短时间内,您确实会使用 50MB 的额外内存。

这与 Flask 无关,读取此类文件然后将其丢弃的常规 Python 函数也会发生同样的事情。

关于python - 为什么Flask读取大文本文件不占内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44329119/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com