Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 限制sqlite3使用的最大内存量_Python_Sqlite - Fatal编程技术网

Python 限制sqlite3使用的最大内存量

Python 限制sqlite3使用的最大内存量,python,sqlite,Python,Sqlite,我在python中使用sqlite3,该程序在不同的线程中运行。Sqlite3只驻留在一个线程中。过了一会儿,sqlite3线程占用了大量内存 如何限制sqlite3使用的最大内存量 tumb关于最大内存大小的规则是什么?您可以将PRAGMA语句传递给游标对象,以更改当前会话的数据库行为 PRAGMA语句是使用与其他SQLite命令相同的接口发出的,例如SELECT、INSERT 从SQLite文档:可以看出,本例使用的内存量少得可笑,但仅用于说明目的。限制:memory:数据库中的缓存大小没有

我在python中使用sqlite3,该程序在不同的线程中运行。Sqlite3只驻留在一个线程中。过了一会儿,sqlite3线程占用了大量内存

如何限制sqlite3使用的最大内存量


tumb关于最大内存大小的规则是什么?

您可以将PRAGMA语句传递给游标对象,以更改当前会话的数据库行为

PRAGMA语句是使用与其他SQLite命令相同的接口发出的,例如SELECT、INSERT


从SQLite文档:

可以看出,本例使用的内存量少得可笑,但仅用于说明目的。限制:memory:数据库中的缓存大小没有任何意义。也许你可以修改一下你的例子为什么512兆比特是一个很小的缓存?@DavoudTaghawi-Nejad,你是对的,但我没有选择使用任意的数据库名。这个例子仍然存在。它不是512MB,而是512KB。1024字节==1 KBconn=sqlite3.connectFILENAME将正确且更清晰
>>> import sqlite3
>>> conn = sqlite3.connect(FILENAME)
>>> cur = conn.cursor()
>>> cur.execute("PRAGMA cache_size = -512") # Negative value means use N * 1024 bytes of memory.
<sqlite3.Cursor object at 0x01F14260>