Cancelling gupnp_service_info_get_introspection_async
- From: Mark Ryan <mark d ryan linux intel com>
- To: gupnp-list gnome org
- Subject: Cancelling gupnp_service_info_get_introspection_async
- Date: Mon, 22 Jul 2013 11:42:44 +0200
Hi All,
We've identified a problem with
gupnp_service_info_get_introspection_async. The problem is simple.
There is no way to cancel a request to
gupnp_service_info_get_introspection_async and this can make it
difficult for GUPnP clients that call this function to shutdown cleanly.
Technically, it is easy to add a cancel function, but there are a number
of possible solutions and some of them involve breaking the backwards
compatibility, so I thought it would be better to raise the issue on the
mailing list before preparing a patch. For me there are two questions.
1. Do we modify gupnp_service_info_get_introspection_async directly or
deprecate it and provide a new function that contains an extra parameter
or return value used for cancellation? I'm guessing we want to do the
latter. If we provide a new function, what should it be called?
2. How should the clients cancel
gupnp_service_info_get_introspection_async? Should they pass in a
GCancellable object, which they can pass to a call to
g_cancellable_cancel at a later stage, or should they call a new _cancel
function to cancel the retrieval of introspection data. The first
option would be more consistent with modern GLib interfaces, but the
second, would be more consistent with how the existing GUPnP
asynchronous functions, such as gupnp_service_proxy_begin_action,
currently work.
Any thoughts?
Mark
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]