From 1d6b3317b9da81909c81723d30efc7da80e002fe Mon Sep 17 00:00:00 2001 From: lili <1307862086@qq.com> Date: Sat, 30 Aug 2025 20:13:40 +0800 Subject: [PATCH] customize event loop --- src/motif_test.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/motif_test.c b/src/motif_test.c index a93fd67..4236433 100644 --- a/src/motif_test.c +++ b/src/motif_test.c @@ -199,6 +199,19 @@ int main(int argc, char *argv[]) { XmMainWindowSetAreas(mainwin, menubar, NULL, NULL, NULL, form); XtRealizeWidget(toplevel); - XtAppMainLoop(app); + + /* 自定义事件循环 */ + XEvent event; + while (1) { + if (XtAppPending(app)) { + XtAppNextEvent(app, &event); + XtDispatchEvent(&event); + } else { + /* 空闲时可以执行后台逻辑 */ + printf("Idle...\n"); + usleep(500000); /* 0.5秒 */ + } + } + return 0; }