This commit is contained in:
jxxghp 2023-08-01 08:10:13 +08:00
parent c902b6ab70
commit 43e1816444
3 changed files with 11 additions and 5 deletions

View File

@ -1,5 +1,5 @@
from typing import Any from typing import Any
import gc
from app.chain.download import * from app.chain.download import *
from app.chain.media import MediaChain from app.chain.media import MediaChain
from app.chain.search import SearchChain from app.chain.search import SearchChain
@ -312,6 +312,9 @@ class MessageChain(ChainBase):
userid=userid, total=len(medias)) userid=userid, total=len(medias))
# 保存缓存 # 保存缓存
self.save_cache(user_cache, self._cache_file) self.save_cache(user_cache, self._cache_file)
# 主动回收内存
del user_cache
gc.collect()
def __post_medias_message(self, channel: MessageChannel, def __post_medias_message(self, channel: MessageChannel,
title: str, items: list, userid: str, total: int): title: str, items: list, userid: str, total: int):

View File

@ -1,5 +1,6 @@
import json import json
import re import re
import gc
from datetime import datetime from datetime import datetime
from typing import Dict, List, Optional, Union, Tuple from typing import Dict, List, Optional, Union, Tuple
@ -415,6 +416,9 @@ class SubscribeChain(ChainBase):
self.__match(torrents_cache) self.__match(torrents_cache)
# 保存缓存到本地 # 保存缓存到本地
self.save_cache(torrents_cache, self._cache_file) self.save_cache(torrents_cache, self._cache_file)
# 主动回收内存
del torrents_cache
gc.collect()
def __match(self, torrents_cache: Dict[str, List[Context]]): def __match(self, torrents_cache: Dict[str, List[Context]]):
""" """

View File

@ -130,10 +130,9 @@ class TMDb(object):
def cache(self, cache): def cache(self, cache):
os.environ[self.TMDB_CACHE_ENABLED] = str(cache) os.environ[self.TMDB_CACHE_ENABLED] = str(cache)
@staticmethod
@lru_cache(maxsize=REQUEST_CACHE_MAXSIZE) @lru_cache(maxsize=REQUEST_CACHE_MAXSIZE)
def cached_request(method, url, data, json, proxies): def cached_request(self, method, url, data, json):
return requests.request(method, url, data=data, json=json, proxies=proxies) return requests.request(method, url, data=data, json=json, proxies=self.proxies)
def cache_clear(self): def cache_clear(self):
return self.cached_request.cache_clear() return self.cached_request.cache_clear()
@ -151,7 +150,7 @@ class TMDb(object):
) )
if self.cache and self.obj_cached and call_cached and method != "POST": if self.cache and self.obj_cached and call_cached and method != "POST":
req = self.cached_request(method, url, data, json, self.proxies) req = self.cached_request(method, url, data, json)
else: else:
req = self.__class__._session.request(method, url, data=data, json=json, proxies=self.proxies) req = self.__class__._session.request(method, url, data=data, json=json, proxies=self.proxies)