একটি ওয়েক লক রিলিজ করুন, একটি ওয়েক লক রিলিজ করুন, একটি ওয়েক লক রিলিজ করুন

এই পৃষ্ঠায় আপনার অ্যাপের কাছে থাকা ওয়েক লকটি কীভাবে রিলিজ করবেন তা বর্ণনা করা হয়েছে। ব্যাটারির ক্ষয় এড়াতে অ্যাপটি ব্যবহার শেষ করার সাথে সাথেই ওয়েক লকটি রিলিজ করা গুরুত্বপূর্ণ।

একটি সক্রিয় ওয়েক লক প্রকাশ করুন

একটি সক্রিয় ওয়েক লক প্রকাশ করতে, এর release() পদ্ধতিটি কল করুন। এটি করলে CPU-তে আপনার দাবি প্রকাশ পাবে।

উদাহরণস্বরূপ, নিম্নলিখিত কোডটি একটি wake lock অর্জন করে , কিছু কাজ করে, তারপর wake lock প্রকাশ করে:

কোটলিন

@Throws(MyException::class)
fun doSomethingAndRelease() {
    wakeLock.apply {
        try {
            acquire(WAKELOCK_TIMEOUT)
            doTheWork()
        } finally {
            release()
        }
    }
}

জাভা

void doSomethingAndRelease() throws MyException {
    try {
        wakeLock.acquire(WAKELOCK_TIMEOUT);
        doTheWork();
    } finally {
        wakeLock.release();
    }
}

ওয়েক লকগুলি আর প্রয়োজন না হলে তা ছেড়ে দিতে ভুলবেন না। উদাহরণস্বরূপ, যদি আপনি কোনও ব্যাকগ্রাউন্ড টাস্ক শেষ করার জন্য ওয়েক লক ব্যবহার করেন, তাহলে কাজটি শেষ হওয়ার সাথে সাথে লকটি ছেড়ে দিতে ভুলবেন না।

এই কোড সম্পর্কে গুরুত্বপূর্ণ বিষয়সমূহ

  • এই উদাহরণে, doTheWork() পদ্ধতিটি একটি ব্যতিক্রম ছুঁড়ে দিতে পারে। এই কারণে, কোডটি finally ব্লকে ওয়েক লকটি প্রকাশ করে, যাতে কোনও ব্যতিক্রম ছুঁড়ে দেওয়া হোক বা না হোক, ওয়েক লকটি মুক্তি পায়। আপনার সেট করা প্রতিটি ওয়েক লক মুক্তি পেয়েছে কিনা তা নিশ্চিত করা খুবই গুরুত্বপূর্ণ, তাই আপনাকে প্রতিটি সম্ভাব্য কোড পাথ পরীক্ষা করে দেখতে হবে যাতে নিশ্চিত করা যায় যে ওয়েক লকটি তাদের কোনওটিতে সক্রিয় নেই।

  • WakeLock.acquire(long timeout) ব্যবহার করে ওয়েক লকটি অর্জন করা সবচেয়ে ভালো, যা নির্দিষ্ট সময়সীমার পরে স্বয়ংক্রিয়ভাবে ওয়েক লকটি প্রকাশ করে। তবে, যখন আপনার আর প্রয়োজন হবে না তখনও আপনার ওয়েক লকটি স্পষ্টভাবে ছেড়ে দেওয়া উচিত, যাতে আপনি প্রয়োজনের চেয়ে বেশি সময় ধরে ওয়েক লকটি ধরে না রাখেন।

আরো দেখুন