pub type FnQueueWaitIdle = extern "system" fn(queue: Queue) -> Result;