From faae655de3cdbed4be1d472b01ce0c4d81e905ed Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 1 Apr 2014 19:12:59 +0200 Subject: man: add man page for sd_event_new() --- man/sd_event_new.xml | 181 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 181 insertions(+) create mode 100644 man/sd_event_new.xml (limited to 'man/sd_event_new.xml') diff --git a/man/sd_event_new.xml b/man/sd_event_new.xml new file mode 100644 index 0000000000..1fe18202b6 --- /dev/null +++ b/man/sd_event_new.xml @@ -0,0 +1,181 @@ + + + + + + + + + sd_event_new + systemd + + + + Developer + Lennart + Poettering + lennart@poettering.net + + + + + + sd_event_new + 3 + + + + sd_event_new + sd_event_default + sd_event_ref + sd_event_unref + + Acquire and release an event loop object + + + + + #include <systemd/sd-bus.h> + + + int sd_event_new + sd_bus **event + + + + int sd_event_default + sd_bus **event + + + + sd_bus *sd_event_ref + sd_bus *event + + + + sd_bus *sd_event_unref + sd_bus *event + + + + + + + Description + + sd_event_new() allocates a new event + loop object. The event loop object is returned in the + event parameter. After use drop + the returned reference with + sd_event_unref(). When the last reference is + dropped the event loop is freed. + + sd_event_default() acquires a reference + to the default event loop object of the calling thread, possibly + allocating a new object if no default event loop object has been + allocated yet for the thread. After use drop the returned + referened with sd_event_unref(). When the + last reference is dropped the event loop is freed. If this + function is called while the object returned from a previous call + from the same thread is still referenced, the same object is + returned again, but the reference is increased by one. It is + recommended to use this call instead of + sd_event_new() in order to share event loop + objects between various components that are dispatched in the same + thread. All threads either have no or one default event loops + associated, but never more. + + sd_event_ref() increases the reference + counter of the specified event loop object by one. + + sd_event_unref() decreases the + reference counter of the specified event loop object by one. If + the counter hits zero the event loop object is freed. Not that it + is freed regardless if it is the default event loop object of a + thread or not. This means that allocating an event loop with + sd_event_default(), then releasing it and + then acquiring a new one with + sd_event_default() will result in two + distinct objects. Note that in order to free an event loop object + all remaining event sources of the event loop also need to be + freed as they each keep a reference to it. + + + + Return Value + + On success, sd_event_new() and + sd_event_default() return 0 or a positive + integer. On failure, they return a negative errno-style error + code. sd_event_ref() always returns a pointer + to the event loop object passed + in. sd_event_unref() always returns + NULL. + + + + Errors + + Returned errors may indicate the following problems: + + + + -ENOMEM + + Not enough memory to allocate object + + + + -EMFILE + + The maximum number of event loops has been allocated. + + + + + + + Notes + + sd_event_new() and the other functions + described here are available as a shared library, which can be + compiled and linked to with the + libsystemd pkg-config1 + file. + + + + See Also + + + systemd1, + sd-event3, + sd_event_add_io3, + sd_event_add_time3, + sd_event_add_signal3, + sd_event_add_child3, + sd_event_add_defer3, + sd_event_add_post3, + sd_event_add_exit3 + + + + -- cgit v1.2.3-54-g00ecf