একটি ওয়েক লক রিলিজ করুন, একটি ওয়েক লক রিলিজ করুন, একটি ওয়েক লক রিলিজ করুন
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
এই পৃষ্ঠাটি বর্ণনা করে যে কীভাবে আপনার অ্যাপে থাকা একটি ওয়েক লক রিলিজ করবেন। ব্যাটারি নষ্ট হওয়া এড়াতে আপনার অ্যাপটি ব্যবহার করা শেষ হওয়ার সাথে সাথে একটি ওয়েক লক রিলিজ করা গুরুত্বপূর্ণ।
একটি সক্রিয় ওয়েক লক ছেড়ে দিন
একটি সক্রিয় ওয়েক লক প্রকাশ করতে, এটির release()
পদ্ধতিতে কল করুন। এটি করা CPU-তে আপনার দাবি প্রকাশ করে।
উদাহরণস্বরূপ, নিম্নলিখিত কোডটি একটি ওয়েক লক অর্জন করে , কিছু কাজ করে, তারপর ওয়েক লকটি প্রকাশ করে:
কোটলিন
@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)
দিয়ে ওয়েক লকটি অর্জন করা ভাল, যা নির্দিষ্ট সময়সীমার পরে স্বয়ংক্রিয়ভাবে ওয়েক লকটি প্রকাশ করে। যাইহোক, যখন আপনার আর প্রয়োজন হবে না তখনও আপনার ওয়েক লকটি স্পষ্টভাবে ছেড়ে দেওয়া উচিত, তাই আপনি প্রয়োজনের চেয়ে বেশি সময় ধরে ওয়েক লকটি ধরে রাখবেন না।
এছাড়াও দেখুন
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-09-11 UTC-তে শেষবার আপডেট করা হয়েছে।
[[["সহজে বোঝা যায়","easyToUnderstand","thumb-up"],["আমার সমস্যার সমাধান হয়েছে","solvedMyProblem","thumb-up"],["অন্যান্য","otherUp","thumb-up"]],[["এতে আমার প্রয়োজনীয় তথ্য নেই","missingTheInformationINeed","thumb-down"],["খুব জটিল / অনেক ধাপ","tooComplicatedTooManySteps","thumb-down"],["পুরনো","outOfDate","thumb-down"],["অনুবাদ সংক্রান্ত সমস্যা","translationIssue","thumb-down"],["নমুনা / কোড সংক্রান্ত সমস্যা","samplesCodeIssue","thumb-down"],["অন্যান্য","otherDown","thumb-down"]],["2025-09-11 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[],null,["This page describes how to release a wake lock held by your app.\nIt's important to release a wake lock as soon as your app is\nfinished using it to avoid draining the battery.\n\nRelease an active wake lock\n\nTo release an active wake lock, call its [`release()`](/reference/android/os/PowerManager.WakeLock#release()) method. Doing so\nreleases your claim to the CPU.\n\nFor example, the following code [acquires a wake lock](/develop/background-work/background-tasks/awake/wakelock/set),\ndoes some work, then releases the wake lock:\n\n\nKotlin \n\n```kotlin\n@Throws(MyException::class)\nfun doSomethingAndRelease() {\n wakeLock.apply {\n try {\n acquire(WAKELOCK_TIMEOUT)\n doTheWork()\n } finally {\n release()\n }\n }\n}https://github.com/android/snippets/blob/30ed522851a9273c94afcd3a4c30bf674346ad18/misc/src/main/java/com/example/snippets/backgroundwork/WakeLockSnippetsKotlin.kt#L43-L53\n```\n\nJava \n\n```java\nvoid doSomethingAndRelease() throws MyException {\n try {\n wakeLock.acquire(WAKELOCK_TIMEOUT);\n doTheWork();\n } finally {\n wakeLock.release();\n }\n}https://github.com/android/snippets/blob/30ed522851a9273c94afcd3a4c30bf674346ad18/misc/src/main/java/com/example/snippets/backgroundwork/WakeLockSnippetsJava.java#L30-L37\n```\n\n\u003cbr /\u003e\n\nMake sure to release wake locks as soon as they are no longer needed. For\nexample, if you use a wake lock to allow a background task to finish, make sure\nto release the lock as soon as the task finishes.\n\nKey points about this code\n\n- In this example, the method `doTheWork()` might throw an exception. For this\n reason, the code releases the wake lock in the `finally` block, to make sure\n the wake lock is released whether or not an exception is thrown. It's very\n important to make sure every wake lock you set is released, so you need to\n check every possible code path to make sure the wake lock isn't left active\n on any of them.\n\n- It's best to acquire the wake lock with\n [`WakeLock.acquire(long timeout)`](/reference/android/os/PowerManager.WakeLock#acquire(long)), which\n automatically releases the wake lock after the specified timeout period.\n However, you should still release the wake lock explicitly when you no\n longer need it, so you don't hold the wake lock for longer than necessary.\n\nSee also\n\n- [Set a wake lock](/develop/background-work/background-tasks/awake/wakelock/set)"]]