parrotcode: A transactional variable | |
Contents | PMCs |
src/pmc/stmvar.pmc -- A transactional variable
A transactional variable for Parrot's Software Transactional Memory (STM) implementation.
void init()
void init_pmc(value)
value
.
If value
is another STMVar or an STMRef PMC,
we simply copy the PMC internals of that PMC into this one.
If not,
we create a new STM structure based on value
and assign that to this PMC.PMC *clone()
void mark()
get_read
get_update
set
new_value
to the PMC,
or begins an STM transaction to do that.freeze
thaw
share_ro
*/
/* * Local variables: * c-file-style: "parrot" * End: * vim: expandtab shiftwidth=4: */
|