Antoine Pitrou created ARROW-2052: ------------------------------------- Summary: Unify OwnedRef and ScopedRef Key: ARROW-2052 URL: https://issues.apache.org/jira/browse/ARROW-2052 Project: Apache Arrow Issue Type: Task Components: Python Affects Versions: 0.8.0 Reporter: Antoine Pitrou
Currently {{OwnedRef}} and {{ScopedRef}} have similar semantics with small differences. Furtheremore, the naming distinction isn't obvious. I propose to unify them as a single {{OwnedRef}} class with the following characteristics: - doesn't take the GIL automatically - has a {{release()}} method that decrefs the pointer (and sets the internal copy to NULL) before returning it - has a {{detach()}} method that returns the pointer (and sets the internal copy to NULL) without decrefing it For the rare situations where an {{OwnedRef}} may be destroyed with the GIL released, a {{OwnedRefNoGIL}} derived class would also be proposed (the naming scheme follows Cython here). Opinions / comments? -- This message was sent by Atlassian JIRA (v7.6.3#76005)