Fork us on GitHub Follow us on Google+ Follow us on Facebook Follow us on Twitter

Opened 6 years ago

Last modified 6 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 Jiri Svoboda)

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.

Change History (1)

comment:1 Changed 6 years ago by Jiri Svoboda

Description: modified (diff)
Note: See TracTickets for help on using tickets.