val expectedDurationNanos = expectedDurationMillis * 1_000_000L
hintSession = hintManager.createHintSession(tids, expectedDurationNanos)
تخمین زمان به نانوثانیه: سختافزار گوشی زمان را با نانوثانیه میسنجد. کد میگوید: «من پیشبینی میکنم این کار مثلاً ۱۰۰۰ میلیثانیه (۱ ثانیه) طول بکشد.» اندروید با توجه به این تخمین، فرکانس CPU را تنظیم میکند.
hintSession =
hintManager.createHintSession(...)
اینجا Session ساخته میشود.
از این لحظه سیستمعامل میفهمد:
این Thread قرار است حدود یک ثانیه کار سنگین انجام دهد.
اما نکته مهم این است که این دستور CPU را مستقیماً روی فرکانس بالاتر قفل نمیکند. فقط یک «Hint» (راهنمایی) به سیستمعامل میدهد. سیستم بر اساس سیاستهای خودش (مصرف باتری، دما، وضعیت دستگاه و...) تصمیم میگیرد که آیا فرکانس CPU، زمانبندی Thread یا منابع دیگر را تغییر دهد یا نه.

