Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
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
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?
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 lurking in the Monastery: (9)
As of 2015-07-30 07:14 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (270 votes), past polls