Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Cancelling/slaying/killing reply blocked threads.: (3 Items)
   
Cancelling/slaying/killing reply blocked threads.  
Hi there,

I have a setup where I have an application that sends a request to a Resource Manager.  This ResMgr doesn't reply to the
 message until something has occurred that requires a reply.  This concept is talked about in some of the IPC related 
pages on this site.  As long as everything is running this concept works really well for my situation, however in the 
process of debugging and general implementation work I like to Ctrl-C and/or slay my application that is sending the 
message.  When I attempt this pidin shows me that the thread i have doing the MsgSend is still blocked on REPLY and i'm 
unable to fully kill the application.  Today I need to slay both the sending application, and the ResMgr that does the 
actual replying.

So my question is, how can I have all my application's threads terminated when I use "slay" or Ctrl-C?

Thanks,

Josh
Re: Cancelling/slaying/killing reply blocked threads.  
On Wed, Feb 27, 2008 at 02:13:09PM -0500, Josh Schmiedlin wrote:
> Hi there,
> 
> I have a setup where I have an application that sends a request to a Resource Manager.  This ResMgr doesn't reply to 
the message until something has occurred that requires a reply.  This concept is talked about in some of the IPC related
 pages on this site.  As long as everything is running this concept works really well for my situation, however in the 
process of debugging and general implementation work I like to Ctrl-C and/or slay my application that is sending the 
message.  When I attempt this pidin shows me that the thread i have doing the MsgSend is still blocked on REPLY and i'm 
unable to fully kill the application.  Today I need to slay both the sending application, and the ResMgr that does the 
actual replying.
> 
> So my question is, how can I have all my application's threads terminated when I use "slay" or Ctrl-C?
> 
> Thanks,
> 
> Josh

Your resource manager probably gets an unblock pulse when
this occurs.  If you're using the standard resource manager
framework in libc this will cause your
(resmgr_io_funcs_t *)->unblock() callout to be called which
should MsgError(rcvid, EINTR) to let the client go (after
any appropriate internal cleanup).

-seanb
RE: Cancelling/slaying/killing reply blocked threads.  
Thanks!!! 

-----Original Message-----
From: Sean Boudreau [mailto:seanb@qnx.com] 
Sent: Wednesday, February 27, 2008 2:21 PM
To: general-community
Subject: Re: Cancelling/slaying/killing reply blocked threads.


On Wed, Feb 27, 2008 at 02:13:09PM -0500, Josh Schmiedlin wrote:
> Hi there,
> 
> I have a setup where I have an application that sends a request to a
Resource Manager.  This ResMgr doesn't reply to the message until
something has occurred that requires a reply.  This concept is talked
about in some of the IPC related pages on this site.  As long as
everything is running this concept works really well for my situation,
however in the process of debugging and general implementation work I
like to Ctrl-C and/or slay my application that is sending the message.
When I attempt this pidin shows me that the thread i have doing the
MsgSend is still blocked on REPLY and i'm unable to fully kill the
application.  Today I need to slay both the sending application, and the
ResMgr that does the actual replying.
> 
> So my question is, how can I have all my application's threads
terminated when I use "slay" or Ctrl-C?
> 
> Thanks,
> 
> Josh

Your resource manager probably gets an unblock pulse when
this occurs.  If you're using the standard resource manager
framework in libc this will cause your
(resmgr_io_funcs_t *)->unblock() callout to be called which
should MsgError(rcvid, EINTR) to let the client go (after
any appropriate internal cleanup).

-seanb


_______________________________________________
General
http://community.qnx.com/sf/go/post5339