diff third_party/libuv/docs/code/uvstop/main.c @ 173:827c6ac504cd hg-web

Merged in default here.
author MrJuneJune <me@mrjunejune.com>
date Mon, 19 Jan 2026 18:59:10 -0800
parents 948de3f54cea
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/third_party/libuv/docs/code/uvstop/main.c	Mon Jan 19 18:59:10 2026 -0800
@@ -0,0 +1,33 @@
+#include <stdio.h>
+#include <uv.h>
+
+int64_t counter = 0;
+
+void idle_cb(uv_idle_t *handle) {
+    printf("Idle callback\n");
+    counter++;
+
+    if (counter >= 5) {
+        uv_stop(uv_default_loop());
+        printf("uv_stop() called\n");
+    }
+}
+
+void prep_cb(uv_prepare_t *handle) {
+    printf("Prep callback\n");
+}
+
+int main() {
+    uv_idle_t idler;
+    uv_prepare_t prep;
+
+    uv_idle_init(uv_default_loop(), &idler);
+    uv_idle_start(&idler, idle_cb);
+
+    uv_prepare_init(uv_default_loop(), &prep);
+    uv_prepare_start(&prep, prep_cb);
+
+    uv_run(uv_default_loop(), UV_RUN_DEFAULT);
+
+    return 0;
+}