[PATCH v2 09/13] vireventthread: exit thread synchronously on finalize
Daniel Henrique Barboza
danielhb413 at gmail.com
Mon Aug 10 16:37:24 UTC 2020
On 7/23/20 7:14 AM, Nikolay Shirokovskiy wrote:
> It useful to be sure no thread is running after we drop all references to
Nit: "It is useful to ..."
Reviewed-by: Daniel Henrique Barboza <danielhb413 at gmail.com>
> virEventThread. Otherwise in order to avoid crashes we need to synchronize some
> other way or we make extra references in event handler callbacks to all the
> object in use. And some of them are not prepared to be refcounted.
>
> Signed-off-by: Nikolay Shirokovskiy <nshirokovskiy at virtuozzo.com>
> ---
> src/util/vireventthread.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/src/util/vireventthread.c b/src/util/vireventthread.c
> index cf86592..136a550 100644
> --- a/src/util/vireventthread.c
> +++ b/src/util/vireventthread.c
> @@ -43,6 +43,7 @@ vir_event_thread_finalize(GObject *object)
>
> if (evt->thread) {
> g_main_loop_quit(evt->loop);
> + g_thread_join(evt->thread);
> g_thread_unref(evt->thread);
> }
>
>
More information about the libvir-list
mailing list