diff options
author | Jenkins2 <jenkins2@gerrit.asterisk.org> | 2017-10-12 09:02:47 -0500 |
---|---|---|
committer | Gerrit Code Review <gerrit2@gerrit.digium.api> | 2017-10-12 09:02:47 -0500 |
commit | 3affeac39d292811eb803f4f77f8132cc72424e7 (patch) | |
tree | 1bc334de6d7b321c144c92c6f22fd854fe2bb43c /include/asterisk | |
parent | 620b40297497b8734e809bf1138655be02fbf1ec (diff) | |
parent | fd3101e8ad320848e966d09f8b64f51628855257 (diff) |
Merge "astobj2: Run weakproxy callbacks outside of lock."
Diffstat (limited to 'include/asterisk')
-rw-r--r-- | include/asterisk/astobj2.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/asterisk/astobj2.h b/include/asterisk/astobj2.h index 484e1e35c..9b5ec123b 100644 --- a/include/asterisk/astobj2.h +++ b/include/asterisk/astobj2.h @@ -671,6 +671,10 @@ int ao2_weakproxy_subscribe(void *weakproxy, ao2_weakproxy_notification_cb cb, v * of the cb / data pair. If it was subscribed multiple times it must be * unsubscribed as many times. The OBJ_MULTIPLE flag can be used to remove * matching subscriptions. + * + * \note When it's time to run callbacks they are copied to a temporary list so the + * weakproxy can be unlocked before running. That means it's possible for + * this function to find nothing before the callback is run in another thread. */ int ao2_weakproxy_unsubscribe(void *weakproxy, ao2_weakproxy_notification_cb cb, void *data, int flags); |