Problem passing variables to thread

Reply

Join Date: Sep 2005
Posts: 1
Reputation: barteled is an unknown quantity at this point 
Solved Threads: 0
barteled barteled is offline Offline
Newbie Poster

Problem passing variables to thread

 
0
  #1
Sep 15th, 2005
I'm having difficulty passing variables to threads. I've recently compiled 5.8.7 with threads enabled and I am using the new ithreads. When running code as follows:

use Thread qw(async);

async {
while(1) {
print 1;
}
};

while (1) {
print 2;
}

The code works as expected and prints both 1's and 2's. But whenever I try to use a parent's variables in children processes I run into problems. For example from the camel book:

use Thread qw(async);
use Thread::Queue;

my $Q = Thread::Queue->new();
async {
while (defined($datum = $Q->dequeue)) {
print $datum;
}
};

$Q->enqueue(12);
$Q->enqueue("A");

while(1) {
print 1;
}

12 and A are never printed, just 1; And if I try printing $Q from both inside and outside the async block, they reference to different objects. I was under the impression, and I believe the O'Reilly book is to, that children have direct access to var
iables that are created in the parents before the thread is initiated. Am I wrong in this assumption? Is there a compiler flag that I missed to allow this kind of variable scope? If this code is wrong any insights on how to access parent process objects from within threads would be greatly appreciated.

I'm using linux (kernel 2.6.11). I'm not sure what other information about my system configuration could pertain to this problem. Please ask if more info is needed.

Thanks in advance for any help given.
Reply With Quote Quick reply to this message  
Join Date: Aug 2008
Posts: 3
Reputation: Lamer980 is an unknown quantity at this point 
Solved Threads: 0
Lamer980's Avatar
Lamer980 Lamer980 is offline Offline
Newbie Poster

Re: Problem passing variables to thread

 
0
  #2
Aug 6th, 2008
Yep, there is a limit to the amount of GET data. If my memeory servers my well, it's 255 bytes (characters). I'm not sure if this is before or after url encoding.

With that amount of data, I suggest going either to a form with POST data, or writing some of if off to a session.
Reply With Quote Quick reply to this message  
Join Date: Mar 2006
Posts: 898
Reputation: KevinADC has a spectacular aura about KevinADC has a spectacular aura about 
Solved Threads: 67
KevinADC's Avatar
KevinADC KevinADC is offline Offline
Practically a Posting Shark

Re: Problem passing variables to thread

 
0
  #3
Aug 6th, 2008
Originally Posted by Lamer980 View Post
Yep, there is a limit to the amount of GET data. If my memeory servers my well, it's 255 bytes (characters). I'm not sure if this is before or after url encoding.

With that amount of data, I suggest going either to a form with POST data, or writing some of if off to a session.
I think you posted in the wrong thread.
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC