It's probably because you are setting it up in a non-threadsafe manner. Googling for Device::Modem::GSM indicates it is threadsafe.
Try to confine ALL code related to the GSM module to the thread. Don't try to pass subs from module to the thread.
Also remember that threads:shared variables are not tied across thread boundaries. Each thread actively has to read the thread:shared variable for it to be updated in it's own space. This can be done easily in Tk with some timers, that do nothing but refresh-read all the shared variables at a 10 ms interval. Without seeing the actual code, all we can do is guess at where you are making the mistake.
You might also want to ditch threads entirely and go for a forked solution.
In reply to Re: Perl/Tk Multithreading
by zentara
in thread Perl/Tk Multithreading
by mahis_431
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |