fn get_ffi_runtime() -> &'static tokio::runtime::Runtime {
use std::sync::OnceLock;
static RUNTIME: OnceLock<tokio::runtime::Runtime> = OnceLock::new();
RUNTIME.get_or_init(|| {
tokio::runtime::Runtime::new().expect("Failed to create tokio runtime")
})
}