Beefy Boxes and Bandwidth Generously Provided by pair Networks Frank
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: blessing support in new threads::shared ?

by dave_the_m (Parson)
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/a.pl SCALAR $ perl588t /tmp/a.pl 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

Dave.


Comment on Re: blessing support in new threads::shared ?
Download Code
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?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://532868]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (8)
As of 2014-04-18 23:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (473 votes), past polls