Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Re: Access to $self in a thread?

by BrowserUk (Pope)
on Sep 12, 2013 at 15:51 UTC ( #1053750=note: print w/replies, xml ) Need Help??

in reply to Access to $self in a thread?

Simply stated, you cannot do what you are trying to do. That is, you cannot share objects between threads.

I'm not going to explain that, but just ask you to take my word for it.

I'm also going to suggest that given your current level of understanding of Perl, you should not even be considering using threads.

An example of what I mean is your new function.

  • It creates a scalar called $self to which it assigns a reference to an anonymous hash.
  • It then passes a reference to that reference into a thread.

    That thread will get a copy of the reference to a scalar, which will be a copy of the scalar $self which will point to a copy of the anonymous hash containing a copy of the key 'universe' and a copy of whatever value was passed in to initialise that value.

    Nothing you do to any of the copies, will ever be visible to the other.

  • The function ends by blessing and returning a reference to a completely different, undeclared, and uninitialised hash called %self.

    %self has no relationship to the scalar called $self.

Given your demonstrated level of understanding of Perl; your attempts to use threading will just fail.

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (9)
As of 2018-03-20 16:32 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (254 votes). Check out past polls.