summaryrefslogtreecommitdiff
path: root/include/asterisk
diff options
context:
space:
mode:
authorJenkins2 <jenkins2@gerrit.asterisk.org>2017-10-12 09:16:29 -0500
committerGerrit Code Review <gerrit2@gerrit.digium.api>2017-10-12 09:16:29 -0500
commit0a54ccf56aaf96386ced28c3a1e5e8c7ab9d3cbf (patch)
treeebe493ef42f66cd7a9a70f6652f4104c64ce5710 /include/asterisk
parent6446950c3836001c74a7068f939a89b938502dde (diff)
parentaadfc09edddfb4470ea562f9f7286f2a251a8cce (diff)
Merge "astobj2: Run weakproxy callbacks outside of lock." into 14
Diffstat (limited to 'include/asterisk')
-rw-r--r--include/asterisk/astobj2.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/asterisk/astobj2.h b/include/asterisk/astobj2.h
index 33e022421..b118d2ec0 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);