diff --git a/services/src/ability.rs b/services/src/ability.rs index bdd421dfeecdea65be1d11ee1d0599e3321ff069..093a62444a5fa892ea5faf274117dfe2c40c30e1 100644 --- a/services/src/ability.rs +++ b/services/src/ability.rs @@ -63,10 +63,12 @@ impl RequestAbility { PANIC_INFO = Some(info); })); - ylong_runtime::builder::RuntimeBuilder::new_multi_thread() + if let Err(e) = ylong_runtime::builder::RuntimeBuilder::new_multi_thread() .worker_num(4) .build_global() - .unwrap(); + { + error!("ylong_runtime error: {}", e); + } info!("ylong_runtime init ok"); let runcount_manager = RunCountManager::init(); @@ -79,7 +81,11 @@ impl RequestAbility { unsafe { SYSTEM_CONFIG_MANAGER.write(SystemConfigManager::init()) }; info!("system_config_manager init ok"); - let task_manager = TaskManager::init(runcount_manager.clone(), client_manger.clone(), self.active_counter.clone()); + let task_manager = TaskManager::init( + runcount_manager.clone(), + client_manger.clone(), + self.active_counter.clone(), + ); *self.task_manager.lock().unwrap() = Some(task_manager.clone()); info!("task_manager init ok"); @@ -119,8 +125,14 @@ impl Ability for RequestAbility { ) { info!("on_start_with_reason: {:?}", reason); if reason.name == "usual.event.USER_REMOVED" { - let user_id = reason.value.parse::().unwrap(); - account::remove_account_tasks(user_id); + match reason.value.parse::() { + Ok(user_id) => { + account::remove_account_tasks(user_id); + } + Err(e) => { + error!("on_start_with_reason err {}", e); + } + } self.init(handler); } else { self.init(handler); @@ -164,11 +176,14 @@ static A: extern "C" fn() = { #[link_section = ".text.startup"] extern "C" fn init() { info!("begin request service init"); - let system_ability = RequestAbility::new() + if let Some(system_ability) = RequestAbility::new() .build_system_ability(samgr::definition::DOWNLOAD_SERVICE_ID, false) - .unwrap(); - system_ability.register(); - info!("request service inited"); + { + system_ability.register(); + info!("request service inited"); + } else { + info!("request service inited error"); + } } init }; diff --git a/services/src/lib.rs b/services/src/lib.rs index 4ba5cdaf2a0e696d798f91e71d2dc916916c6db9..c8f571335e3911c5f8fc8debc49603ed861b8534 100644 --- a/services/src/lib.rs +++ b/services/src/lib.rs @@ -83,9 +83,9 @@ mod tests { match DB_LOCK.lock() { Ok(inner) => inner, Err(_) => { - RequestDb::get_instance() - .execute("DELETE FROM request_task") - .unwrap(); + if let Err(e) = RequestDb::get_instance().execute("DELETE FROM request_task") { + error!("lock delete failed: {}", e); + } DB_LOCK = std::sync::Mutex::new(()); DB_LOCK.lock().unwrap() } @@ -100,9 +100,9 @@ mod tests { impl<'a> Drop for DatabaseLock<'a> { fn drop(&mut self) { - RequestDb::get_instance() - .execute("DELETE FROM request_task") - .unwrap(); + if let Err(e) = RequestDb::get_instance().execute("DELETE FROM request_task") { + error!("drop delete failed: {}", e); + } } }