Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32k
Open
Description
Bug report
Bug description:
importrandomimporttimefromthreadingimportLock,ThreadimportpsutilclassCache:def__init__(self,cap):self.m= {}self.mu=Lock()self.cap=capdefget(self,key):withself.mu:try:v=self.m[key]exceptKeyError:return0,Falsereturnv,Truedefset(self,key,value):withself.mu:self.m[key]=valueiflen(self.m)>self.cap:self.m.popitem()defset_key(cache):c=0whileTrue:key=random.randint(0,1000000000)cache.set(key,key)c+=1ifc==100000:c=0print(".",end="",flush=True)defrun():cache=Cache(500000)for_inrange(4):thread=Thread(target=set_key,args=[cache])thread.start()process=psutil.Process()whileTrue:time.sleep(10)withcache.mu:print(f"rss:{process.memory_info().rss}, dict len:{len(cache.m)}")if__name__=="__main__":run()
Platform: macOS-14.6.1-x86_64-i386-64bit-Mach-O
Python 3.13.3t
uv run --python 3.13.3t mem.py............................................................rss: 384696320, dict len: 500000.......................................................rss: 636743680, dict len: 500000.......................................................rss: 888782848, dict len: 500000.........................................................rss: 1140793344, dict len: 500000......................................................rss: 1392799744, dict len: 500000
Python 3.13.3
uv run --python 3.13.3 mem.py....................................................................................................rss: 159633408, dict len: 500000...............................................................................................................rss: 159813632, dict len: 500000.........................................................................................................rss: 159981568, dict len: 500000...........................................................................................................rss: 160149504, dict len: 500000......................................................................................................rss: 160301056, dict len: 500000
CPython versions tested on:
3.13
Operating systems tested on:
macOS