aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2011-09-20 21:26:59 +0200
committerMax Kellermann <max@duempel.org>2011-09-20 21:27:17 +0200
commit0c0400b6fc10219ca545a25643ceabe576d5181b (patch)
tree7f652e77066ca4308738ef7b864a8194487c0c42
parent2e83af7c2184829128448a6b2d19a2eb5ab94145 (diff)
downloadmpd-0c0400b6fc10219ca545a25643ceabe576d5181b.tar.gz
mpd-0c0400b6fc10219ca545a25643ceabe576d5181b.tar.xz
mpd-0c0400b6fc10219ca545a25643ceabe576d5181b.zip
io_thread: add function _timeout_add()
Same as _timeout_add_seconds(), but this one has millisecond resolution.
-rw-r--r--src/io_thread.c9
-rw-r--r--src/io_thread.h4
2 files changed, 13 insertions, 0 deletions
diff --git a/src/io_thread.c b/src/io_thread.c
index 501cfe50a..ffa513d49 100644
--- a/src/io_thread.c
+++ b/src/io_thread.c
@@ -124,6 +124,15 @@ io_thread_idle_add(GSourceFunc function, gpointer data)
}
GSource *
+io_thread_timeout_add(guint interval_ms, GSourceFunc function, gpointer data)
+{
+ GSource *source = g_timeout_source_new(interval_ms);
+ g_source_set_callback(source, function, data, NULL);
+ g_source_attach(source, io.context);
+ return source;
+}
+
+GSource *
io_thread_timeout_add_seconds(guint interval,
GSourceFunc function, gpointer data)
{
diff --git a/src/io_thread.h b/src/io_thread.h
index d1a203aa3..8ff5a71e5 100644
--- a/src/io_thread.h
+++ b/src/io_thread.h
@@ -64,6 +64,10 @@ io_thread_idle_add(GSourceFunc function, gpointer data);
G_GNUC_MALLOC
GSource *
+io_thread_timeout_add(guint interval_ms, GSourceFunc function, gpointer data);
+
+G_GNUC_MALLOC
+GSource *
io_thread_timeout_add_seconds(guint interval,
GSourceFunc function, gpointer data);