The offical interface to malloc() from XS is New, Newz, Renew, Safefree. See the section "Memory Management" in perlapi.pod

As an aside, note that you have to be very careful when creating multiple threads inside perl. Most of perl's data structures are private to each interpreter and are not designed to be shared by multiple threads. So for example if you have two threads accessing the same SV structure, madness will ensue. Make sure that only the original thread that called the XS code allocates/releases any further Perl data. If the other threads only do private stuff unrelated to perl then that's okay.

Dave.


In reply to Re: General memory management for embedded/extended perl with C threads by dave_the_m
in thread General memory management for embedded/extended perl with C threads by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.