home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!cis.ohio-state.edu!ucbvax!UV3.EGLIN.AF.MIL!RICHARDE
- From: RICHARDE@UV3.EGLIN.AF.MIL ("Eric F. Richards")
- Newsgroups: comp.os.vms
- Subject: RE: SMG$ routines: Just how non-reenterent are they?
- Message-ID: <9212152021.AA09425@ucbvax.Berkeley.EDU>
- Date: 15 Dec 92 13:49:00 GMT
- Sender: daemon@ucbvax.BERKELEY.EDU
- Distribution: world
- Organization: The Internet
- Lines: 34
-
- kushmer@bnlux1.bnl.gov (christopher kushmerick) writes:
- > The manual says that SMG$ is not reenterent (spelling?).
- >
- > Does this mean that I should disable ASTs from occuring arounds each smg call
- > if my program uses AST routines triggered by timers, $qios et cetera?
- >
- > Or does it only mean that I should not do any SMG routines in any ASTs that
- > may
- > interrupt a SMG routine?
- >
-
- You can use ASTs for non-SMG related activities. Calling SMG from an AST
- routine can produce "interesting" results -- in my experience they were never
- fatal, but you wouldn't get what you want. (Crosshatches of lines on the
- screen, for example.)
-
- Caveats: SMG disables ASTs in its own activity. You can disable
- user-mode ASTs to your process by simply XOFFing your terminal while
- SMG is drawing something. This is fine as long as your ASTs aren't
- triggered or required by another process (for example, a blocking AST
- on a lock).
-
- Also, under "certain" circumstances SMG will disable ASTs but not re-enable
- them. As I recall, it involved updating stuff in a pasted display that had
- a viewport, but the data being updated was outside the viewport. I SPR'd
- this through our local channels, but never heard anything back on it.
-
- Eric Richards
- Tybrin Corp
- 904/882-9795
- richarde@eglin.af.mil
- "Opinions here are my own."
-
-
-