Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


sd_event_source_unref(3) — Linux manual page

NAME |SYNOPSIS |DESCRIPTION |RETURN VALUE |NOTES |HISTORY |SEE ALSO |NOTES |COLOPHON

SD_EVENT_SOURCE_UNREF(3)  sd_event_source_unrefSD_EVENT_SOURCE_UNREF(3)

NAME        top

       sd_event_source_unref, sd_event_source_unrefp,       sd_event_source_ref, sd_event_source_disable_unref,       sd_event_source_disable_unrefp - Increase or decrease event source       reference counters

SYNOPSIS        top

#include <systemd/sd-event.h>sd_event_source* sd_event_source_unref(sd_event_source *source);void sd_event_source_unrefp(sd_event_source **source);sd_event_source* sd_event_source_ref(sd_event_source *source);sd_event_source*sd_event_source_disable_unref(sd_event_source *source);void sd_event_source_disable_unrefp(sd_event_source **source);

DESCRIPTION        top

sd_event_source_unref()may be used to decrement by one the       internal reference counter of the event source object specified assource. The reference counter is initially set to one, when the       event source is created with calls such assd_event_add_io(3) orsd_event_add_time(3). When the reference counter reaches zero, the       object is detached from the event loop object and destroyed.sd_event_source_unrefp()is similar tosd_event_source_unref()but       takes a pointer to a pointer to ansd_event_sourceobject. This       call is useful in conjunction with GCC's and LLVM'sClean-upVariable Attribute[1]. Note that this function is defined as       inline function.sd_event_source_ref()may be used to increase by one the internal       reference counter of the event source object specified assource.sd_event_source_unref(),sd_bus_creds_unrefp()andsd_bus_creds_ref()execute no operation if the passed event source       object isNULL.       Note that event source objects stay alive and may be dispatched as       long as they have a reference counter greater than zero. In order       to drop a reference of an event source and make sure the       associated event source handler function is not called anymore it       is recommended to combine a call ofsd_event_source_unref()with a       prior call tosd_event_source_set_enabled()withSD_EVENT_OFFor       callsd_event_source_disable_unref(), see below.sd_event_source_disable_unref()combines a call tosd_event_source_set_enabled()withSD_EVENT_OFFwithsd_event_source_unref(). This ensures that the source is disabled       before the local reference to it is lost. Thesource parameter is       allowed to beNULL.sd_event_source_disable_unrefp()is similar tosd_event_source_unrefp(), but in addition disables the source       first. This call is useful in conjunction with GCC's and LLVM'sClean-up Variable Attribute[1]. Note that this function is defined       as inline function.

RETURN VALUE        top

sd_event_source_unref()andsd_event_source_disable_unref()always       returnNULL.sd_event_source_ref()always returns the event       source object passed in.

NOTES        top

       Functions described here are available as a shared library, which       can be compiled against and linked to with thelibsystemd pkg-config(1) file.       The code described here usesgetenv(3), which is declared to be       not multi-thread-safe. This means that the code calling the       functions described here must not callsetenv(3) from a parallel       thread. It is recommended to only do calls tosetenv()from an       early phase of the program when no other threads have been       started.

HISTORY        top

sd_event_source_unref(),sd_event_source_unrefp(), andsd_event_source_ref()were added in version 229.sd_event_source_disable_unref()andsd_event_source_disable_unrefp()were added in version 243.

SEE ALSO        top

sd-event(3),sd_event_add_io(3),sd_event_add_time(3),sd_event_add_signal(3),sd_event_add_child(3),sd_event_add_inotify(3),sd_event_add_defer(3),sd_event_source_set_enabled(3)

NOTES        top

        1. Clean-up Variable Attributehttps://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html

COLOPHON        top

       This page is part of thesystemd (systemd system and service       manager) project.  Information about the project can be found at       ⟨http://www.freedesktop.org/wiki/Software/systemd⟩.  If you have a       bug report for this manual page, see       ⟨http://www.freedesktop.org/wiki/Software/systemd/#bugreports⟩.       This page was obtained from the project's upstream Git repository       ⟨https://github.com/systemd/systemd.git⟩ on 2025-08-11.  (At that       time, the date of the most recent commit that was found in the       repository was 2025-08-11.)  If you discover any rendering       problems in this HTML version of the page, or you believe there is       a better or more up-to-date source for the page, or you have       corrections or improvements to the information in this COLOPHON       (which isnot part of the original manual page), send a mail to       man-pages@man7.orgsystemd 258~rc2SD_EVENT_SOURCE_UNREF(3)

Pages that refer to this page:sd-event(3)sd_event_add_child(3)sd_event_add_defer(3)sd_event_add_inotify(3)sd_event_add_io(3)sd_event_add_memory_pressure(3)sd_event_add_signal(3)sd_event_add_time(3)sd_event_source_get_pending(3)sd_event_source_set_enabled(3)systemd.directives(7)systemd.index(7)



HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp