On 09/05/2014 00:10, Simon wrote:
I'd like to make a C memory buffer available inside Python via the Python C/API 
without copying that memory into Python. How to do this? I've read [1] but it's 
not clear that this functionality exists. In javascript it's possible using 
String::NewExternal() [2].

"Creates a new external string using the ASCII data defined in the given 
resource.

When the external string is no longer live on V8's heap the resource will be 
disposed by calling its Dispose method. The caller of this function should not 
otherwise delete or modify the resource. Neither should the underlying buffer be 
deallocated or modified except through the destructor of the external string 
resource."

[1] https://docs.python.org/2/c-api/buffer.html
[2] 
http://izs.me/v8-docs/classv8_1_1String.html#a07c47bf675b802c550984fa24511a589


Does this help http://jakevdp.github.io/blog/2014/05/05/introduction-to-the-python-buffer-protocol/ ?

Also note that the Python 3 buffer protocol differs from that of Python 2, so make sure that you check out PEP 3118 that's referenced in the above link.

--
My fellow Pythonistas, ask not what our language can do for you, ask what you can do for our language.

Mark Lawrence

---
This email is free from viruses and malware because avast! Antivirus protection 
is active.
http://www.avast.com


--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to