Add support for multithreading in OpenEdge - OpenEdge Development - Products Enhancements - Progress Community

 OpenEdge Development

Add support for multithreading in OpenEdge

  • Not Planned

As said in the title Openedge should support multithreading

It would be useful in many many cases.

I know that with the Appserver you can avoid many cases where threading would be useful, but not everybody is using the appserver and even the appserver doesn't solve every problem

Status update

The OpenEdge team has made significant improvements to both our Application and Database Server technologies to support multithreading in the run-time environment. We do not however have plans to introduce multithreading constructs into the ABL/OOABL, and will not be investing in this capability in the foreseeable future. We do agree that there are specific use cases where having multithreading in the language would be useful, but also acknowledge that the effort to achieve this capability is huge and something that we cannot justify the investment for at this time.

Thanks for your understanding.

  • It will be easier to convince the PM if you provide a few of those many use cases here...


    Not that a form of multithreading is coming in the "nextgen" AppServer in 11.4.  It is not multithreading in a session, but having each session under an agent be a thread.  This is going to introduce some interesting shifts in best practice.

    Note that I recognize that multithreading is not a trivial task, either to implement or to use safely.  I still think we need it.

  • We also have various use cases where we'd like to use multi threading. The main one being when running off large batches of data processing/number crunching and being able to update the user as to the progress of it without having the worry of white screening. At the moment our application runs quite a few large data processing routines that the user has to wait for before anything else can be done. Multi threading would allow the user to continue with using the application while the processing takes place.

  • please don't forget to vote if you like the idea ;-)

  • Has anyone tried playing around with .NET Async Tasks in the AVM?  I have no idea if it would work but it would be an interesting exercise.

  • @Brian K. Maher: I blogged about it:

  • Fabian, I read your link.  Very interesting stuff.

  • This should really be a priority by now...

  • If openedge was  multi-threaded, would that also mean that . Net objects which are also  multithreaded will also work?