zeroshade commented on issue #269:
URL: https://github.com/apache/arrow-go/issues/269#issuecomment-2744268818

   The easiest example I can point to is the usage of 
`github.com/apache/arrow-adbc`. For drivers we build and package for 
distribution, we utilize the 
https://pkg.go.dev/github.com/apache/arrow-go/[email protected]/arrow/memory/mallocator
 to ensure that all memory allocated and utilized by the package is allocated 
and freed as C memory rather than managed by the Go runtime, to ensure it is 
always safe for interacting with other libraries across the C interface.
   
   Another example would be for memory intensive applications that want to 
leverage Arenas or other very granular memory management. 
   
   Essentially, if you don't need fine-grained control over how memory is 
allocated and *when* it is free'd and given back to the OS, you don't need a 
custom allocator. This would be the vast majority of cases honestly.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to