Since the commit
https://gitlab.gnome.org/GNOME/glib/-/commit/
01c02ac08b682de622930b1278c9c14d0ffe6c49,
g_usleep(1) will be translated to Sleep(1) on Windows which means
sleep in 1 millisecond. But GLib provides g_thread_yield() API
which is exactly what we required here for thread context switching.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/559>
#define THREAD_SWITCH() \
G_STMT_START { \
- /* a minimal sleep is a context switch */ \
- g_usleep (1); \
+ g_thread_yield (); \
} G_STMT_END;
#define THREAD_TEST_RUNNING() (!!_gst_check_threads_running)