pub type SHAsyncCancelProc = Option<unsafe extern "C" fn(context: *mut SHContext, userData: *mut c_void)>;