# Basic Usage

## Preventing system suspension to handle an event

If you want to keep the system awake to process an event, which might be an
interrupt or responding to a FIDL request, there is a very simple API for this.
[`fuchsia.power.system/ActivityGovernor.AcquireWakeLease`](https://cs.opensource.google/fuchsia/fuchsia/+/39b9a242c6e2b09731a426cdcf9f1353206fd034:sdk/fidl/fuchsia.power.system/system.fidl;l=245)
returns a [`LeaseToken`](https://cs.opensource.google/fuchsia/fuchsia/+/39b9a242c6e2b09731a426cdcf9f1353206fd034:sdk/fidl/fuchsia.power.system/system.fidl;l=72) which prevents system suspension as long
as the token exists. If you are a driver processing an interrupt, you can ACK
the interrupt after getting the `LeaseToken`. After you are done processing the
event, simply drop the `LeaseToken`.

There are actually not that many use cases that are this simple on Fuchsia. Many
use cases require keeping the system awake while passing the event along to
another component. The next [section](https://fuchsia.dev/fuchsia-src/concepts/power/intro/basic_suspend_prevention) discusses this use
case.
[](https://issues.fuchsia.dev/issues/new?component=1439230&template=1881640&description=Issue+on:+https://fuchsia.dev/docs/concepts/power/intro/basic_suspend_prevention.md "Report a bug or suggest improvements on this page") [](https://cs.opensource.google/fuchsia/fuchsia/+/main:docs/concepts/power/intro/basic_suspend_prevention.md "View the source code of this page") [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/concepts/power/intro/basic_suspend_prevention.md&cloneRepo=fuchsia/fuchsia:refs/heads/main&fullPath=fuchsia/docs/concepts/power/intro/basic_suspend_prevention.md "Edit the source code of this page")