Hi.
There is no an easy way to do that. It's possible to make your application use multithreading. Not all parts of your application could work in this mode. This mode is suited for background process that can be split somehow to work in different threads.
There is a great article by John Fauss about multithreading and PowerBuilder: Free My GUI! - Multi-Threading in PowerBuilder - Appeon Community. It explains all the basics about this topic, but you are supposed to understand some more advanced topics of pb. I would suggest to read it, and then maybe do some experiments.
Some important points - limitations:
- Multithreading doesn't support visual controls - objects. Even messagebox cannot be used.
- Global variable may be used, but in sharedobjects they are considered as local. This affects also sqlca e.t.c.
You may conclude that any repeated process running inside a transaction cannot be a candidate to be split in a multithread processing. But a process that repeats a specific task n times, and doesn't run in a transaction, it can be a candidate to be executed using sharedobjects.
So, in your case, you will have to:
- Check if you have long running processes that could run in separate threads.
- You will have somehow to decide how many threads to support. This may vary depending on processor and available memory.
- You would have use a controller object (you have to design & built it) to manage your threads.
- You also need an object that will "establish - maintain" communication between your applications and n threads working.
Finally, it's not easy to implement. Depending on your experience in PowerBuilder and the way your application was initially designed it might be less or more work.
Andreas.