diff --git a/native/drivers/native-uart0.c b/native/drivers/native-uart0.c
index 9f77a72d0c9d2cc3cc67b87d30fad600dcc10135..70d545a36ba93df2aa6197e23b49ce2f7b81b41a 100644
--- a/native/drivers/native-uart0.c
+++ b/native/drivers/native-uart0.c
@@ -66,7 +66,7 @@ void _native_handle_uart0_input()
     uart0_notify_thread();
 
     _native_in_isr = 0;
-    cpu_switch_context_exit();
+    thread_yield();
 }
 
 int _native_set_uart_fds(void)