Yesterday, after finishing a gui, I started reading some old list postings on threads. I looked over my application and found a part of the code where I could test the threading (perl 5.8.x). Best part, it worked!
I have been programming in Perl steadily for the past five years, and it has quickly become my language of choice. Up until now, I have proceeded in the linear fashion in which Perl works on win32, each task performed must be performed sequentially. Of course, I have always sacrificed speed and responsivity for versatility. Now, I would like to begin retrofitting some of my code to a threaded model, in part. I thought a good solution would be to try it with a gui, but I am stuck in my thinking, and have a few questions to ask, to gain clarity: 1. When using threading with win32::gui, would/could I create a thread for each gui component/object? For example, from my Master loop, could I create a thread that held a Window and every button, textfield, etc. contained inside the Window, while another thread held a Dialog Box with all of it's components (textfields, buttons, etc.)? 2. If I can, from where do I control the Show() method? I tried performing this from the Master Loop, but it said, of course, that my $Window didn't exist. Then, I tried passing the Show() through the thread (e.g. $sample_thread->$Window->Show();), but that didn't work either. 3. Instead of placing the $Window in threading, do I place the functions of $Window in the threading? 4. Does anyone have an example of threading with Win32::gui? If anyone is old enough to remember seeing their first Walkman (circa 1980), that is the similar feeling I am having with win32::gui and threads! For five years, I have used Perl for database processing, and cgi. Two years ago, I discovered the power of OLE. Now, I am revisiting GUI, and contemplating threads. Next, I might begin considering myself to be a programmer! :) Brad Smith