diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2001-08-13 12:45:21 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2001-08-13 12:45:21 +0000 |
commit | cd1ee231f67664d7a2f2d53512a707d2736dbb0e (patch) | |
tree | 26d3be9ce06d827160183cf5272c57670329c2cb /pod | |
parent | f3faeb53b75c95d2773d14d859d4fa9ca1594daa (diff) | |
download | perl-cd1ee231f67664d7a2f2d53512a707d2736dbb0e.tar.gz |
[PATHC] sharedsv.[c|h]
From: "Artur Bergman" <artur@contiller.se>
Date: Mon, 13 Aug 2001 14:38:41 +0200
Message-ID: <005401c123f4$e1f53360$21000a0a@vogw2kdev>
Subject: [PATCH] embed.pl
From: Arthur Bergman <arthur@contiller.se>
Date: Mon, 13 Aug 2001 14:38:14 +0200
Message-ID: <B79D96D6.3088%arthur@contiller.se>
Subject: [PATCH] sharedsv cleanups
From: "Arthur Bergman" <arthur@contiller.se>
Date: Mon, 13 Aug 2001 15:14:25 +0200
Message-ID: <005a01c123f9$dfe525d0$21000a0a@vogw2kdev>
Plus few tweaks: _init needs to be Adp, the prototypes
should not be revealed unless using ithreads, #endif FOO
must be #endif /* FOO */, adding (parentheses) around
do { } while doesn't work too well.
p4raw-id: //depot/perl@11659
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perlapi.pod | 100 |
1 files changed, 82 insertions, 18 deletions
diff --git a/pod/perlapi.pod b/pod/perlapi.pod index e41cf8a515..57e3f5c0e4 100644 --- a/pod/perlapi.pod +++ b/pod/perlapi.pod @@ -1344,6 +1344,17 @@ SV is B<not> incremented. =for hackers Found in file sv.c +=item newSV + +Create a new null SV, or if len > 0, create a new empty SVt_PV type SV +with an initial PV allocation of len+1. Normally accessed via the C<NEWSV> +macro. + + SV* newSV(STRLEN len) + +=for hackers +Found in file sv.c + =item NEWSV Creates a new SV. A non-zero C<len> parameter indicates the number of @@ -1357,17 +1368,6 @@ C<id> is an integer id between 0 and 1299 (used to identify leaks). =for hackers Found in file handy.h -=item newSV - -Create a new null SV, or if len > 0, create a new empty SVt_PV type SV -with an initial PV allocation of len+1. Normally accessed via the C<NEWSV> -macro. - - SV* newSV(STRLEN len) - -=for hackers -Found in file sv.c - =item newSViv Creates a new SV and copies an integer into it. The reference count for the @@ -1870,6 +1870,70 @@ L<perlcall>. =for hackers Found in file scope.h +=item sharedsv_find + +Tries to find if a given SV has a shared backend, either by +looking at magic, or by checking if it is tied again threads::shared. + + shared_sv* sharedsv_find(SV* sv) + +=for hackers +Found in file sharedsv.c + +=item sharedsv_init + +Saves a space for keeping SVs wider than an interpreter, +currently only stores a pointer to the first interpreter. + + void sharedsv_init() + +=for hackers +Found in file sharedsv.c + +=item sharedsv_lock + +Recursive locks on a sharedsv. +Locks are dynamicly scoped at the level of the first lock. + void sharedsv_lock(shared_sv* ssv) + +=for hackers +Found in file sharedsv.c + +=item sharedsv_new + +Allocates a new shared sv struct, you must yourself create the SV/AV/HV. + shared_sv* sharedsv_new() + +=for hackers +Found in file sharedsv.c + +=item sharedsv_thrcnt_dec + +Decrements the threadcount of a shared sv. When a threads frontend is freed +this function should be called. + + void sharedsv_thrcnt_dec(shared_sv* ssv) + +=for hackers +Found in file sharedsv.c + +=item sharedsv_thrcnt_inc + +Increments the threadcount of a sharedsv. + void sharedsv_thrcnt_inc(shared_sv* ssv) + +=for hackers +Found in file sharedsv.c + +=item sharedsv_unlock + +Recursively unlocks a shared sv. + + void sharedsv_unlock(shared_sv* ssv) + +=for hackers +Found in file sharedsv.c + =item SP Stack pointer. This is usually handled by C<xsubpp>. See C<dSP> and @@ -2664,19 +2728,19 @@ false, defined or undefined. Does not handle 'get' magic. =for hackers Found in file sv.h -=item SvTYPE - -Returns the type of the SV. See C<svtype>. +=item svtype - svtype SvTYPE(SV* sv) +An enum of flags for Perl types. These are found in the file B<sv.h> +in the C<svtype> enum. Test these flags with the C<SvTYPE> macro. =for hackers Found in file sv.h -=item svtype +=item SvTYPE -An enum of flags for Perl types. These are found in the file B<sv.h> -in the C<svtype> enum. Test these flags with the C<SvTYPE> macro. +Returns the type of the SV. See C<svtype>. + + svtype SvTYPE(SV* sv) =for hackers Found in file sv.h |