Colin Burgess(deleted)
01/05/2009 3:28 PM
post19404
|
When a process is SEND or REPLY blocked on a server, if you kill it then an unblock pulse will be sent to the server, so
that it can abort the request.
You must then implement said unblock handler in the server, and MsgError() to the blocked client, which will then
happily die from the signal.
You can avoid this behaviour by setting a specific flag on the channel when you create it.
Regards,
Colin
Ned Snow wrote:
> Hi,
> I have an application which has a main process, and worker processes that are created on demand. The application uses
the "report for work" paradigm, where the workers do a MsgSend to the main process when they are ready, and the main
process does a MsgReply when there is work to do. This application runs for weeks/months at a time with no problems, but
sometimes a worker process becomes unresponsive. It appears as reply-blocked on the main process as normal, but does
not activate. What I would like to do in this situation is kill the process, but I can't, even with SIGKILL as root.
>
> What would make a process unkillable? Is there any other way to get rid of it, short of rebooting?
>
> Thanks,
> Ned
>
>
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post19403
>
--
cburgess@qnx.com
|
|
|