× 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.



Steve Richter wrote:
> ...
> Hans Boldt wrote:
> >Of course, then the task is to identify all uses of items in the
> >global structures and add mutexes around all of them. Again, time
> >consuming for development, as well as slowing down the resulting
> >program.
> 
> ok.  a threadsafe(*yes *no) hspec handles the run time isssue right?
> 

But it's not as simple as putting a mutex around each access to a global
structure.  The global static structures are interrelated, so each RPG
procedure would pretty much be a critical section.

That's the basis of RPG's existing (since V4R4 I think)
THREAD(*SERIALIZE) support that controls access to the procedures in a
module so that only one thread is in a module at any one time.  This
protects the static storage in the module, making the module thread-safe
assuming it isn't doing anything thread-unsafe.  If the procedures are
quick-running, the application *may* even get some multi-thread
benefits.  (But the THREAD(*SERIALIZE) support was added specifically so
that RPG programs could run safety in an already threaded environment;
it wasn't added to enable multi-threaded RPG apps.)


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

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.