این متد هوشمندانهترین بخش کد است این جا باید کارمون رو متناسب با وضعیت مموری بهینه کنیم
مثلا در مورد پردازش عکس : یک عکس با کیفیت 4K در رم، فضای بینظیری میگیرد. این تابع میگوید: «بر اساس رمِ خالی، عرضِ عکس (Width) را چقدر کوچک کنم که نه سیخ بسوزد نه کباب؟»
fun getSafeResolution(targetWidth: Int): Int {
activityManager.getMemoryInfo(memoryInfo)
return when {
memoryInfo.lowMemory -> (targetWidth * 0.5).toInt() // حالت فوق بحرانی
memoryInfo.availMem < 512 * 1024 * 1024 -> (targetWidth * 0.7).toInt() // حالت هشدار
else -> targetWidth // حالت امن
}
}ما از این دو متد و ترکیبش میتونیم برای بهبود وضعیت برناممون استفاده کنیم.
این جوری ما کارمون رو هوشمندانه بر اساس وضعیت سخت افزار مدیریت میکنیم
در واقع هدف همه ی کد هایی که تا این جا داشتیم این بود که اپمون روی سیستم عامل زامبی نشه و وقتی سخت افزار در حد آستانه قرار میگیره خودمون پردازش و کارهامون رو مدیریت کنیم.
این کد ها در برنامه های پردازشی یا گیم ها در نهایت معجزه میکنه.

