comp.lang.ada
 help / color / mirror / Atom feed
From: kilgallen@eisner.decus.org (Larry Kilgallen)
Subject: Re: VAX Ada Tasks and VMS Lock Manager
Date: 1997/07/21
Date: 1997-07-21T00:00:00+00:00	[thread overview]
Message-ID: <1997Jul21.101731.1@eisner> (raw)
In-Reply-To: 01bc9579$39aaaf40$83ecced0@jpeterson


In article <01bc9579$39aaaf40$83ecced0@jpeterson>, "Jay and Cathy Peterson" <JPeterson@PCBYTE.net> writes:

> 	I am currently debugging a VAX Ada (v1.5, if it makes a difference)

They are well beyond V1.5 now, fixing many bugs, so it may matter to you.

> application which contains roughly four tasks (plus the main task); one of
> which is is used to synchronize access to a file. Additionally, I am using
> the VMS Lock Manager (VMS version 5.4-2 -- I know; but it is what I have to

They are well beyond V5.4-2 now, fixing many bugs, so it may matter to you.

> work with) to assure the tasks don't walk over pertinent data; namely file
> pointers I include in the controlled-access file. All of that to get to my
> question: How do VAX Ada and VMS treat tasks for locking purposes? The
> "traditional" use of SYS$ENQ and SYS$DEQ are to synchronize processes, I
> know. If I issue a TASKING_ENQW, are the other tasks locked out, or do I

The TASKING_ENQW would be the same as any other TASKING_* jacket for the
"Wait" form of a system service -- other Ada tasks will be allowed to
proceed.

Regardless of how you access SYS$ENQ, it is important to realize that
it doesn't have much regard for processes.  You can deadlock a single
process against itself or a single task against itself with the same
ease with which you deadlock two processes in deadly embrace.  The
crucial element of VMS locking is the Lock ID returned by SYS$ENQ[W].

> need find another way of keeping the tasks from walking on each other? The
> VAX Ada documentation at my disposal is silent on this issue, as far as I
> can ascertain. Any insight into this situation would be appreciated. 

They are well beyond V1.5 now, augmenting the documentation, so maybe
it did matter to you :-).

You might do better with the current documentation, even if you have
the older software.

Regards,
Larry Kilgallen




       reply	other threads:[~1997-07-21  0:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <01bc9579$39aaaf40$83ecced0@jpeterson>
1997-07-21  0:00 ` Larry Kilgallen [this message]
1997-07-22  0:00   ` VAX Ada Tasks and VMS Lock Manager Jay and Cathy Peterson
1997-07-22  0:00     ` Larry Kilgallen
1997-07-22  0:00       ` Jay and Cathy Peterson
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox