From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,405c9fed403b342b X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-12-22 12:57:49 PST Path: archiver1.google.com!news2.google.com!news.maxwell.syr.edu!in.100proofnews.com!in.100proofnews.com!prodigy.com!prodigy.com!rip!sjc70.webusenet.com!news.webusenet.com!sn-xit-02!sn-xit-06!sn-post-02!sn-post-01!supernews.com!corp.supernews.com!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Program Terminates ... Date: Mon, 22 Dec 2003 14:55:44 -0600 Organization: Posted via Supernews, http://www.supernews.com Message-ID: References: <1b585154.0312211634.6c414d2e@posting.google.com> <3lDFb.627904$Fm2.565052@attbi_s04> X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4807.1700 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300 X-Complaints-To: abuse@supernews.com Xref: archiver1.google.com comp.lang.ada:3713 Date: 2003-12-22T14:55:44-06:00 List-Id: That sort of termination often happens when you run out of memory. Storage_Error is raised, and when you handle the exception and try to print out a message, Storage_Error gets raised again. Then the task silently ends. I've debugged that sort of problem dozens of times. Some of them were "bug" reports from customers of Janus/Ada. Anyway, there isn't much you can do to guard against this problem. The best defense is to find the memory leak and get rid of it. Doing that will require using tools specific to your compiler; for instance MemAvail and StackAvail in Janus/Ada, along with debugging storage pools. Randy. "Steve" wrote in message news:3lDFb.627904$Fm2.565052@attbi_s04... > You might try adding a delay after each of the Put_Line statements in the > exception handlers. Maybe the program is getting killed before the message > makes its way out. > > I have seen this type of termination before, usually not with Ada. I have > been known resort to saving state information about each task in shared > memory so I could see where things were when the program died. > > Steve > (The Duck) > > "Peter Richtmyer" wrote in message > news:1b585154.0312211634.6c414d2e@posting.google.com... > > I hope someone can help. > > > > I am running a couple programs using > > Gnat 3.15p on Win2000. One program has a number of tasks that > > all have exception handlers. Virtually all my routines have > > exception handlers too. > > > > After running awhile (the two programs exchange > > messages) the one program terminates gracefully - for no > > apparent reason. Eventually all the tasks seem to terminate, > > though I have not coded any normal way out of some of them > > (endless loops). And I have "Put_Line" statements in all > > exception handlers and at the end of the main program. > > But no error messages are printed. (Other "normal" messages > > are printed during the run.) > > > > Is there some resource that could be used up and yet not cause > > an exception? Or what would cause this behavior? I have never > > seen anything like this before, and I've been at it some years. > > Any ideas very welcome. It is deadline time! > > > > Thanks, > > Peter > >