You declare 'my $progref' before the sub 'ch' and it's therefore in scope as a local variable (and is null). However you dequeue it _after_ you try and set it to 90. Which is why it doesn't work.
IT's only after that $progref = $q -> dequeue() that 'progref' is a reference to the right memory location.
I'm somewhat confused as to why you're trying to pass references to shared variables in the first place though. What are you trying to accomplish?
Update
Looks like BrowserUk is on target - it's to do with subs in sub code blocks, rather than threads.
In reply to Re: Threads and Shared Variables
by Preceptor
in thread Threads and Shared Variables
by hermes1908
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |