The unw_set_caching_policy() routine sets the caching policy of address space as to the policy specified by argument policy. The policy argument can take one of three possible values:
If caching is enabled, an application must be prepared to make appropriate calls to unw_flush_cache() whenever the target changes in a way that could affect the validity of cached information. For example, after unloading (removing) a shared library, unw_flush_cache() would have to be called (at least) for the address-range that was covered by the shared library.
For address spaces created via unw_create_addr_space(3), caching is turned off by default. For the local address space unw_local_addr_space, caching is turned on by default.
On successful completion, unw_set_caching_policy() returns 0. Otherwise the negative value of one of the error-codes below is returned.
unw_set_caching_policy() is thread-safe but not safe to use from a signal handler.