RetainedLocalRef
Stay organized with collections
Save and categorize content based on your preferences.
Annotation that indicates a local variable should be retained outside of any
subsequent AutoreleasePool use. Otherwise, if a local variable has a copy
of an object in a container that is removed in an AutoreleasePool, it will
be deallocated before the local variable goes out of scope.
For example, a ThreadPoolExecutor is used to process a list of tasks,
removing each task from the list as it is processed. ThreadPoolExecutor
tasks are run inside of an AutoreleasePool, since these executors are often
long-lived. If a local variable is initialized to one of the task list's
elements, by default that variable won't be valid (will be deallocated)
after task processing. Adding a LocalRetain annotation to the local
variable ensures it is still valid after task processing.
Inherited Method Summary
From interface
java.lang.annotation.Annotation
abstract
Class<? extends Annotation>
|
annotationType()
|
abstract
boolean
|
equals(Object arg0)
|
abstract
int
|
hashCode()
|
abstract
String
|
toString()
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-07-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-07-10 UTC."],[],[]]