Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cbdfad52 authored by Steven Moreland's avatar Steven Moreland
Browse files

libbinder: more forcePersist docs

Documenting recommending use for now. Looked at adding a shared library
destructor, but this has limited use when people use _exit, when persist
HALs sometimes exit manually early, and since it only corresponds to
this one mechanism. Given perf team work targetting understanding memory
uses/process which are starting, we can focus/rely on more general
infrastructure.

Fixes: 187946888
Test: N/A
Change-Id: I67c2477bccd9ebc789e20527d5692ea3a107c675
parent c3229abc
Loading
Loading
Loading
Loading
+6 −2
Original line number Original line Diff line number Diff line
@@ -50,8 +50,12 @@ class LazyServiceRegistrar {
                              int dumpFlags = IServiceManager::DUMP_FLAG_PRIORITY_DEFAULT);
                              int dumpFlags = IServiceManager::DUMP_FLAG_PRIORITY_DEFAULT);
     /**
     /**
      * Force the service to persist, even when it has 0 clients.
      * Force the service to persist, even when it has 0 clients.
      * If setting this flag from the server side, make sure to do so before calling registerService,
      * If setting this flag from the server side, make sure to do so before calling
      * or there may be a race with the default dynamic shutdown.
      * registerService, or there may be a race with the default dynamic shutdown.
      *
      * This should only be used if it is every eventually set to false. If a
      * service needs to persist but doesn't need to dynamically shut down,
      * prefer to control it with another mechanism such as ctl.start.
      */
      */
     void forcePersist(bool persist);
     void forcePersist(bool persist);


+4 −0
Original line number Original line Diff line number Diff line
@@ -135,6 +135,10 @@ bool AServiceManager_isUpdatableViaApex(const char* instance) __INTRODUCED_IN(31
/**
/**
 * Prevent lazy services without client from shutting down their process
 * Prevent lazy services without client from shutting down their process
 *
 *
 * This should only be used if it is every eventually set to false. If a
 * service needs to persist but doesn't need to dynamically shut down,
 * prefer to control it with another mechanism.
 *
 * \param persist 'true' if the process should not exit.
 * \param persist 'true' if the process should not exit.
 */
 */
void AServiceManager_forceLazyServicesPersist(bool persist) __INTRODUCED_IN(31);
void AServiceManager_forceLazyServicesPersist(bool persist) __INTRODUCED_IN(31);