Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: blessing support in new threads::shared ?

by dave_the_m (Prior)
on Feb 26, 2006 at 12:00 UTC ( #532868=note: print w/replies, xml ) Need Help??

in reply to blessing support in new threads::shared ?

It refers to the following bug:
my $sobj : shared; my $sref = \do{ my $x }; share($sref); $sobj = $sref; bless $sobj, 'baz'; print ref $sobj, "\n"; $ perl587t /tmp/ SCALAR $ perl588t /tmp/ baz
But the main reason for a separate CPAN release was that I rewrote the threads::shared code to make it faster and use less memory; but that this change was too big to be integrated into 5.8.8


Replies are listed 'Best First'.
Re^2: blessing support in new threads::shared ?
by renodino (Curate) on Feb 26, 2006 at 21:46 UTC
    Ah. I tend to use isa(), so I've not hit that yet.

    And while I've got your attention...

    Might you be persuaded to make threads::shared::_id() (or something similar) a public method ? When marshalling structures/objects between threads, its nice to be able to test if something is already shared, and just pop it into a queue, rather than (de/re)constructing. I'm currently using _id(), but using an obviously private method makes me nervous.

      I'm working on an update to threads::shared right now. There will be only minor changes: An update to ppport.h and improvements in the docs (notably information regarding the use of bless with shared variables). I'll add an exported function called 'is_shared' that will be an alias to '_id'. That should make it formal enough.

      I, too, used '_id' to test for sharing in the Object::InsideOut module, so I see this as a good addition to the module.

      Update: Uploaded to CPAN on 2006-02-27.

      Remember: There's always one more bug.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://532868]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (5)
As of 2018-05-22 09:12 GMT
Find Nodes?
    Voting Booth?