Patrik,
Back in the olden days (generally, the 1980s) software was written with
multiple displays to save memory. Only one copy of the program needed
to be loaded, with one activation, and one set of open database files,
etc. It saved memory. which was very scarce back then. It was also
useful when the different screens needed to share data or coordinate
things between them. For example, we had a setup where only one person
could be working on an order at the same time, and by using a MRT, it
could keep track of which orders were being worked on by whom.
Today, I would do that using record locks instead. The memory you save
is insignificant by comparison to the memory systems have these days,
and it's much easier to get the code working properly when it only has
to worry about one user at a time.
So, hopefully, programs that open multiple displays with ACQ, et al, are
very few and far between today.
The other use of INVITE is to allow the computer to continue to do
processing while the user is able to input to a display. Consider
writing something like a TELNET client where data can arrive over the
network, but the user can also type at the same time. You would
accomplish this by writing the data you have, and displaying the screen
with INVITE (and FRCDTA). Then the user can key stuff, but you can also
sit and look for data on a network. If the data arrives before the user
keys anything, you can update the display with the new data, and so
forth. (You would attach a data queue to the display to get
notification when they finish entering input.)
The screen-saver discussed in this thread is the same concept, albeit a
bit simpler. His program is changing the display (the purpose of a
screen saver is to keep changing the display to avoid monitor burn-in)
but still can accept someone hitting a key to abort.
Another example might be something like a game -- I wrote a game a long
time ago where a spaceship (drawn in 5250 with text characters) flies
across the screen, and you have a gun you can move and shoot at it
(again, the gun and ammo are just text characters.) To allow the ship
to move while still allowing you to use F-keys to move/fire the gun, it
uses INVITE, FRCDTA and data queues.
It's not necessary for 99% of business applications, though.
On 8/16/22 3:55 AM, Patrik Schindler wrote:
Hello Scott,
Am 16.08.2022 um 06:16 schrieb Scott Klement <rpg400-l@xxxxxxxxxxxxxxxx>:
While you could use it with ACQ to handle multiple displays, that's only one potential use.
I'm wondering what a real world scenario for a multiple display invited screen would be. I'm not sure if I've asked this before. The possibility smells somewhat like CICS on MVS and successors, but I don't have any further insight into CICS.
:wq! PoC
As an Amazon Associate we earn from qualifying purchases.