comp.lang.ada
 help / color / mirror / Atom feed
From: Ed Falis <falis@thomsoft.com>
Subject: Re: Task kernal
Date: 1996/06/06
Date: 1996-06-06T00:00:00+00:00	[thread overview]
Message-ID: <31B6E3B5.7C69@thomsoft.com> (raw)
In-Reply-To: 31B5C5BE.31DFF4F5@escmail.orl.mmc.com


Theodore E. Dennison wrote:
> 
> Tod Trowbridge wrote:
> >
> >     I am using activada for windows made by Alsys.
> > Does anybody have any information about a run-time
> > error "global blocking situation detected by task
> > kernal".
> 
> I'd suspect that means you have a task deadlock. This is a situation
> where Task_A is waiting to renedzvous with Task_B using Entry_C, and
> Task_B is waiting to rendezvous with Task_A using Entry_D. One way
> to solve such problems is to write your program using some kind of
> client-server model for task interactions. Another way is to have
> one of the tasks use timed entry calls.


As the originator of this msg somewhere in the depths of time, I can confirm that the 
msg indicates a exactly what it says: all tasks in the application are in a state where 
none of them can ever proceed.  This is a case where all the tasks are deadlocked 
together.

The most typical cause of this situation is that one of your tasks has "silently died" 
with an unhandled exception.  

In AdaProbe, set Break.Raise.All prior to executing the application (you could actually 
modify the command to be only for unhandled exceptions if you expect exceptions to be 
raised normally).  You application will likely raise an unhandled exception in some 
task, that caused the remainder of the application to go haywire.  Generally there's 
also a design problem in such situations, since you may not have considered that the 
tasks would ever get into certain states (such as the permanent blockign situation).

Feel free to drop a line if you need to discuss in more detail.

- Ed




      reply	other threads:[~1996-06-06  0:00 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-06-05  0:00 Task kernal Tod Trowbridge
1996-06-05  0:00 ` Theodore E. Dennison
1996-06-06  0:00   ` Ed Falis [this message]
replies disabled

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