× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: RE: What's the best way to run a CL every 30 min
  • From: Chris Bipes <ChrisB@xxxxxxxxxxxxxxx>
  • Date: Wed, 29 Sep 1999 13:52:13 -0700

Very good example.  I do much the same with data queues which I agree are
more difficult to use.  I have been using data queues for years with
multiple programs dumping to data queues and multiple NEPs processing and
responding via Keyed data queues.  But for a general sleeper I like the idea
of using message queues.  I will give it a try next time.

Thank You,

Christopher K. Bipes    mailto:ChrisB@Cross-Check.com
Sr. Programmer/Analyst  mailto:Chris_Bipes@Yahoo.com
CrossCheck, Inc.                http://www.cross-check.com
6119 State Farm Drive   Phone: 707 586-0551 x 1102
Rohnert Park CA  94928  Fax: 707 586-1884

*Note to Recruiters
I nor anyone that I know of is interested in any new and/or exciting
positions. Please do not contact me.


-----Original Message-----
From: Ken Sims at SWS Nevada [mailto:ken.sws@ke9nr.org]
Sent: Wednesday, September 29, 1999 11:38 AM
To: rpg400-l@midrange.com
Subject: Re: Whats the best way to run a CL every 30 min


Hi Bruce and the gang -
I do something very similiar, except that I use a message queue and a
RCVMSG with a WAIT of the appropriate length.  It's easier to do a
SNDMSG than to call the QSNDDTAQ API.

But I take it a step further, and have the program interpret the message
data as a command.  For example, SNDMSG ENDJOB NVSYSMON will cause my
system monitor to end.  HLDJOB will cause the program to continue running
but not take any action.  RLSJOB will cause the program to resume normal
operation.  FRCJOB causes the program to immediate perform its function.
RESTART causes the program to submit another copy of itself and end.  This
is handy if I want program changes to be picked up or otherwise want
everything to be fresh.

Just to throw in another goodie ...

I actually have the WAIT time much less than the actual time between cycles,
so that the program can detect a controlled end and shut itself down.  The
program keeps count of how many times it has been through the RCVMSG wait
since the last time it did a full cycle of processing, and does the full
cycle when appropriate.

In the circumstances being discussed, I'd probably have the WAIT at 60
seconds, and do the full processing on every 30th time through.

Ken
Southern Wine & Spirits of Nevada, Inc.
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.