Opened 12 years ago
Last modified 12 years ago
#494 new enhancement
Need abortable async_get_call() variant
Reported by: | Jiri Svoboda | Owned by: | Jakub Jermář |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | helenos/lib/c | Version: | mainline |
Keywords: | Cc: | ||
Blocker for: | Depends on: | ||
See also: |
Description (last modified by )
There is an async_get_call() which will block forever when no call is received, there is also async_get_call_timeout() which will terminate after a pre-specified timeout has expired.
In some cases, such as serving a remote console (see con_srv.c) we need to terminate the message loop when the network connection is closed, but the console client is not sending any messages. Currently async_get_call_timeout() is used as a work around.
What we need is a variant of async_get_call() that can be aborted at the caller's discretion. Likely the caller will need to pass (or obtain) some object/handle that can be later used to identify the wait that should be aborted.
One suggestion was passing a condition variable that will be later signaled, but there may be other (better?) options.