From 7d54af059fffd27286f6a236470a9096c09921a9 Mon Sep 17 00:00:00 2001
From: Sverker Eriksson
Date: Wed, 22 May 2019 17:48:00 +0200
Subject: erts: Add some erl_nif doc clarifications
---
erts/doc/src/erl_nif.xml | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/erts/doc/src/erl_nif.xml b/erts/doc/src/erl_nif.xml
index f88d255296..d74ae23a93 100644
--- a/erts/doc/src/erl_nif.xml
+++ b/erts/doc/src/erl_nif.xml
@@ -1495,6 +1495,9 @@ enif_free_iovec(iovec);]]>
term.
Returns true on success, or false if term is
not a handle to a resource object of type type.
+ enif_get_resource does not add a reference to the resource
+ object. However, the pointer received in *objp is guaranteed to
+ be valid at least as long as the resource handle term is valid.
@@ -2947,6 +2950,10 @@ enif_map_iterator_destroy(env, &iter);
References made by
enif_make_resource
can only be removed by the garbage collector.
+ There are no guarantees exactly when the destructor of an
+ unreferenced resource is called. It could be called directly by
+ enif_release_resource but it could also be scheduled to be
+ called at a later time possibly by another thread.
--
cgit v1.2.3