|  |  |  | @ -5,12 +5,23 @@ import io.legado.app.data.appDb | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.data.entities.Cache | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.model.analyzeRule.QueryTTF | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.utils.ACache | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.utils.memorySize | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | @Suppress("unused") | 
			
		
	
		
			
				
					|  |  |  |  | object CacheManager { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     private val queryTTFMap = hashMapOf<String, Pair<Long, QueryTTF>>() | 
			
		
	
		
			
				
					|  |  |  |  |     private val memoryLruCache = object : LruCache<String, String>(100) {} | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     /** | 
			
		
	
		
			
				
					|  |  |  |  |      * 最多只缓存50M的数据,防止OOM | 
			
		
	
		
			
				
					|  |  |  |  |      */ | 
			
		
	
		
			
				
					|  |  |  |  |     private val memoryLruCache = object : LruCache<String, String>(1024 * 1024 * 50) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         override fun sizeOf(key: String, value: String): Int { | 
			
		
	
		
			
				
					|  |  |  |  |             return value.memorySize() | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     /** | 
			
		
	
		
			
				
					|  |  |  |  |      * saveTime 单位为秒 | 
			
		
	
	
		
			
				
					|  |  |  | 
 |